[Sheepdog] [PATCH v3] introduce SD_STATUS_HALT to stop serving IO

Liu Yuan namei.unix at gmail.com
Tue Oct 18 08:46:46 CEST 2011


This patch set introduce a new cluster status into sheepdog, which is supposed
to prevent sheepdog from serving IO when lack of redundant nodes.

This patch set is based on the Kazutaka's 'remove xattr' patch set.

Changes from v2 to v3 are:

 - add a new flag field in struct cluster_info and NOHALT uses one bit of it.
 - use hdr.flags to set the nohalt option in collie.
 - add a new epoch_log_read_nr() to return # of the entries instead of bytes.

Changes from v1 to v2 are:

 - refactor's get_cluster_status() to prepare the code for change.
 - address Kazutaka's comments.
 - make cluster 'halt' optionally.

Liu Yuan (6):
      sheep: add a helper epoch_log_read_nr()
      sheep: refactor get_cluster_status()
      sheep: remove wrong 'unknown message' in the log
      sheep: introduce SD_STATUS_HALT
      sheep: add a helper function to get nr_zones
      sheep: use SD_STATUS_HALT to stop serving IO

 collie/cluster.c         |   14 +++-
 collie/collie.c          |    1 +
 include/sheep.h          |    9 +-
 include/sheepdog_proto.h |    1 +
 sheep/group.c            |  228 +++++++++++++++++++++++++++++-----------------
 sheep/sheep_priv.h       |    7 ++
 sheep/store.c            |    9 ++
 7 files changed, 179 insertions(+), 90 deletions(-)

Thanks,
Yuan



More information about the sheepdog mailing list