Hi Martin, The C client (both sync and async) usually detects immediately when a server goes down without blocking and starts contacting other servers. There may be a corner case it's not handling correctly. It would be helpful if you have client debug log. What is your recv_timeout in zookeeper_init()? How long does it take for the client to connect to another server?
Thanks! --Michi On Thu, May 3, 2012 at 11:27 PM, Martin Kou <[email protected]> wrote: > Hi folks, > > I found that while using Zookeeper's sync API in C.. when a Zookeeper > server is taken down, client can block for a long time (i.e. far longer > than the session timeout) - seemingly on recv() calls. > > I wonder if the situation would be better if I use the async API? Does > Zookeeper's async API detect a request has gone for longer than 2/3 * > session timeout and try another server? > > Best Regards, > Martin Kou
