[sheepdog] [PATCH v3 0/5] use rbtree to manage virtual node
Liu Yuan
namei.unix at gmail.com
Wed Sep 11 08:24:52 CEST 2013
v3:
- init rb_root in dog/vdi.c
v2:
- add const for oid_to_vnodes
This is the first round effor that tries to remove max limit of node one cluster
can support.
The next round is to use rbtree to manage sd_nodes, which will make node
management fully dynamic and theoretically no limit of max node.
Nothing else changes execept how we manage the virtual node ring.
Liu Yuan (5):
sheep: restructure sd_vnode
dog: use struct node_id to send requests
sheep: use rbtree to manage vnodes hash ring
rbtree: remove unused augment functions
rbtree: add rb_destroy helper
dog/cluster.c | 18 ++--
dog/common.c | 21 ++---
dog/dog.c | 20 +++--
dog/dog.h | 12 ++-
dog/farm/farm.c | 2 +-
dog/node.c | 27 ++----
dog/trace.c | 8 +-
dog/vdi.c | 53 ++++++------
include/internal_proto.h | 1 -
include/rbtree.h | 18 ++--
include/sheep.h | 216 +++++++++++++++-------------------------------
lib/rbtree.c | 68 ---------------
sheep/gateway.c | 10 +--
sheep/group.c | 8 +-
sheep/plain_store.c | 3 +-
sheep/recovery.c | 8 +-
sheep/request.c | 6 +-
sheep/sheep_priv.h | 2 +-
18 files changed, 167 insertions(+), 334 deletions(-)
--
1.7.9.5
More information about the sheepdog
mailing list