[sheepdog] [PATCH 0/3] zookeeper: fix error handling
Kai Zhang
kyle at zelin.io
Wed May 29 14:38:39 CEST 2013
On May 29, 2013, at 6:37 PM, MORITA Kazutaka <morita.kazutaka at gmail.com> wrote:
> From: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp>
>
> The first two patches fix problems which happens under heavy network
> traffic. The third patch is a clean-up one.
>
> MORITA Kazutaka (3):
> zookeeper: retry zk_create_seq_node on retryable error
> zookeeper: use panic instead of assert for error handling
> zookeeper: use offsetof to calculate offset
>
> sheep/cluster/zookeeper.c | 88 +++++++++++++++++++++++++++++++++++++++------
> 1 file changed, 77 insertions(+), 11 deletions(-)
>
> --
> 1.7.9.5
>
> --
> sheepdog mailing list
> sheepdog at lists.wpkg.org
> http://lists.wpkg.org/mailman/listinfo/sheepdog
Hi MORITA
Very happy to see this patch.
Actually, I'm also working on this and have the same idea on how to handle create sequential node failure (I use uuid_generate() instead).
However, there is still one unsolved problem before I submit my patch.
That is zookeeper cannot handle session timeout.
In that situation, the ephemeral node will be deleted by zookeeper server and other sd nodes will assume the node has left.
Is there a way that sheep can rejoin cluster other than panic?
Because currently sheep panic will cause a qemu restart which should be avoided in production environment.
Thanks,
Kyle
More information about the sheepdog
mailing list