All servers keep a copy - so you can shutdown the zk service entirely (all servers) and restart it and the sessions are maintained.


On 08/16/2010 06:34 PM, Qian Ye wrote:
Thx Mahadev and Benjamin, it seems that I've got some misunderstanding about
the client. I will check it out.

Another relevant question. I noticed that the master zookeeper server keep a
track of all the client session which connects to every zookeeper server in
the same cluster. So when a slave zookeeper server failed, the clients it
served, can switch to another zookeeper server and keep their old session
(the new zookeeper server can get the session information from the master).
My question is, if the master failed, does that means some session
information will definitely be lost?


On Tue, Aug 17, 2010 at 12:40 AM, Benjamin Reed<>  wrote:

the client does keep track of the watches that it has outstanding. when it
reconnects to a new server it tells the server what it is watching for and
the last view of the system that it had.


On 08/16/2010 09:28 AM, Qian Ye wrote:

thx for explaination. Since the watcher can be preserved when the client
switch the zookeeper server it connects to, does that means all the
information will be saved on all the zookeeper servers? I didn't find any
source of the client can hold the watchers information.

On Tue, Aug 17, 2010 at 12:21 AM, Ted Dunning<>

I should correct this.  The watchers will deliver a session expiration
event, but since the connection is closed at that point no further
events will be delivered and the cluster will remove them.  This is as
as the watchers disappearing.

On Mon, Aug 16, 2010 at 9:20 AM, Ted Dunning<>

The other is session expiration.  Watchers do not survive this.  This
happens when a client does not provide timely
evidence that it is alive and is marked as having disappeared by the

Reply via email to