[sheepdog] [PATCH v4 0/3] sheepkeeper: a new cluster manager specialized for sheepdog

Hitoshi Mitake h.mitake at gmail.com
Mon Dec 24 08:44:25 CET 2012


This patchset adds sheepkeeper: a new cluster manager specialized for
sheepdog. The 3rd patch actually adds sheepkeeper, the 1st and 2nd do
trivial preparation for it.

It is far stabilized than v3. It can pass most of the tests. But
sometimes dies with undeterministic bugs. The unpassed tests are: 008
(long), 015, 043, and 044 (long).
# long means the test takes more than 30 seconds.

I believe current version can satisfy least quality for applying. I'm
grad if I can hear your opinions.

changelog:

v2
 * lots of cleaning and bug fix
 * sane command line option handling
 * a little bit improvement of leave handling
 * not call sd_join_handler() in sheepkeeper_join()
 * add new option --enable-sheepkeeper to configure script for
   enable/disable building sheepkeeper

v3
 * lots of cleaning and bug fix
 * suppress some compiler warnings
 * handle leave of sheeps in saner way. this also reduces the problem
   of odd handling of return values from xread/xwrite
 * default log of sheepkeeper is /var/log/sheepkeeper.c, and users can
   specify custom location with -l option

v4
 * tons of cleaning and bug fix
 * documentation: https://github.com/mitake/sheepdog/wiki/sheepkeeper-design-note
 * stabilizing. The unpassed tests are: 008 (long), 015, 043, and 044 (long).

Hitoshi Mitake (3):
  move node_to_str() and str_to_node() from sheep/cluster.h to
    include/internal_proto.h
  move enum cluster_join_result from sheep/cluster.h to
    include/internal_proto.h
  sheepkeeper: a new cluster manager specialized for sheepdog

 .gitignore                  |    1 +
 Makefile.am                 |    2 +-
 configure.ac                |    3 +-
 include/Makefile.am         |    3 +-
 include/internal_proto.h    |   51 +++
 include/net.h               |    1 +
 include/sheepkeeper.h       |   78 ++++
 include/sheepkeeper_msg.def |   17 +
 lib/net.c                   |   17 +
 sheep/Makefile.am           |    3 +-
 sheep/cluster.h             |   50 ---
 sheep/cluster/sheepkeeper.c |  713 +++++++++++++++++++++++++++++++++
 sheepkeeper/Makefile.am     |   44 ++
 sheepkeeper/sheepkeeper.c   |  923 +++++++++++++++++++++++++++++++++++++++++++
 14 files changed, 1852 insertions(+), 54 deletions(-)
 create mode 100644 include/sheepkeeper.h
 create mode 100644 include/sheepkeeper_msg.def
 create mode 100644 sheep/cluster/sheepkeeper.c
 create mode 100644 sheepkeeper/Makefile.am
 create mode 100644 sheepkeeper/sheepkeeper.c

-- 
1.7.5.1




More information about the sheepdog mailing list