When the ZK disconnects/synconnects/expires all the watchers will get the notifications. I think, you should have the KeeperState checks in the respctive watchers and can do the thread handling logics. ________________________________________ From: David Nickerson [[email protected]] Sent: Tuesday, June 26, 2012 8:20 PM To: ZooKeeper mailing list Subject: Dealing with an expired session
In my locking implementation, if a thread wants to wait for a lock, it will create a watcher object, set a watch on the lock before it, and wait on the watcher. When the watch gets triggered, the watcher notifies any threads that are waiting on it. If the session expires, I would like to wake up all of the threads that are waiting for a lock. To my understanding, only the default watcher receives a notification that the session has expired. If this is the case, then I need to maintain a list somewhere of all of the watchers that threads are waiting on so that I can notify them all. Does this sound correct?
