Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Zookeeper, mail # user - help on Zookeeper code walk through?


Copy link to this message
-
Re: help on Zookeeper code walk through?
Benjamin Reed 2011-07-17, 00:27
if you are running with multiple servers, it is the leader that
declares sessions dead, so the leader will call killSession(). the
followers track the liveness of the clients with pings and will
periodically send liveness summaries to the leader.

see camille's email the specific classes to look at.

ben

On Sat, Jul 16, 2011 at 1:44 AM, Yang <[EMAIL PROTECTED]> wrote:
> I'm wondering if a client loses session to its ephemeral znode, under
> the hood, how
> is the watcher triggered?
>
> went through the code , and found something that looks related:
> ZKDataBase.killSession()-->DataTree.killSession()--->DataTree.deleteNode()--->WatchManager.triggerWatch()--->Watcher.process()
>
> but how is ZKDataBase.killSession() called?  from the info given in
> http://zookeeper.apache.org/doc/r3.3.3/zookeeperProgrammers.html#ch_zkSessions
>  I can see the ZooKeeper client code does periodically ping the server
> to maintain liveness. but how the server checks for this liveness and
> trigger killSession(), here I'm having difficulty connecting the dots.
>
> could you please give me some help walking through this piece of code?
>
> Thanks
> Yang
>