James, I'd like to clarify what exactly is the issue you're looking at. If
you provide a list of ZooKeeper servers, then a client will try to reconnect
to another ZooKeeper server upon a disconnection. Reconnecting to another
server does not guarantee maintaining the same session, though. So, are you
trying to guarantee that the session is still the same upon a reconnection?
If so, I don't think you can do it by just changing the client, since the
servers might have expired the old session.

Cheers,
-Flavio 

> -----Original Message-----
> From: James Strachan [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, July 22, 2008 9:09 PM
> To: zookeeper-dev@hadoop.apache.org
> Subject: things lock up when the client reconnects?
> 
> I wonder if anyone else has seen this recently; I've been trying to
> make the WriteLock implementation survive server restarts (i.e.
> reconnecting to another ZK server) with some success. See the latest
> patch here...
> https://issues.apache.org/jira/browse/ZOOKEEPER-78
> 
> but I've found I can reliably get things to lock up. See the
> WriteLockTest.java and change the workAroundClosingLastZNodeFails to
> false and you should be able to run the test yourself and see things
> lock up.
> 
> It seems like things lock up when waiting on a Packet being sent to
> the transport. Sometimes I get a session timed out exception, so if I
> see that I try and recreate the cxcn object which is maybe causing the
> issue; I tried patching the ClientCnxn.SendThread.close() method to do
> a cleanup() to wake up any blocked threads before closing (its in the
> patch for ZOOKEEPER-78 which also depends on the patch for
> ZOOKEEPER-84 BTW); am wondering if anyone has a better idea of dealing
> with a session timeout?
> 
> --
> James
> -------
> http://macstrac.blogspot.com/
> 
> Open Source Integration
> http://open.iona.com

Reply via email to