On Sun, Nov 4, 2012 at 1:25 PM, Liu Yuan <namei.unix at gmail.com> wrote: > On 10/21/2012 09:42 PM, Hitoshi Mitake wrote: >> This is still very incomplete, very buggy and very inefficient. The >> degree of incompleteness is that it doesn't free() obsolete memory >> area and checking return values of system calls which must be done. >> In addition, it can't handle many important situation of join and >> leave of nodes. And it doesn't handle almost every error. A single >> death of node can kill an entire system. >> > > I am wondering when the patch is ready to be merged? Not perfectly > functional but at least no obvious easy bugs and have complete error > handling. Thanks for your review, Yuan. > >> sheepkeeper cluster manager is designed as master-slave. So it can be >> SPOF. But I'm planning to let it be redundant by utilizing corosync. >> >> This patch adds the new directory sheepkeeper/ for it, and the >> executable binary will be produced as sheepkeeper/sheepkeeper. >> The cluster driver for sheep is added as sheep/cluster/sheepkeeper.c. >> >> And I have to note that this patch adds odd change to lib/event.c. A >> new member is added to struct event_info. This new member is added for >> avoiding memory corruption caused by other part of this patch. I can't >> pointed out the bug, I'll try to find it later and remove the dummy >> member. > > For merging, this kind of bug should be dug out. Yes, the main changes I want to make before merging are: * reduce the above bug and remove dummy member from event_info * remove die(), log(), debug_printf(), and _xcalloc(). For doing this, I should make some change on lib/logger.c etc. > >> If it can be improved, this can be an alternative of the group >> management part of ZooKeeper, and it doesn't depend on JVM. > > I think if this patch set ready to be merged, I can lend hand to it and > it would be improved in a much faster pace. > Thanks a lot, I'll send the updated version soon. Thanks, Hitoshi |