[
https://issues.apache.org/jira/browse/ZOOKEEPER-961?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas Koch updated ZOOKEEPER-961:
----------------------------------
Attachment: ZOOKEEPER-961.patch
This patch is one I had still around and updated it against trunk.
It fixes the watch recovery issue and by doing so decouples the circular
dependency between ZooKeeper and ClientCnxn
> Watch recovery after disconnection when connection string contains a prefix
> ---------------------------------------------------------------------------
>
> Key: ZOOKEEPER-961
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-961
> Project: ZooKeeper
> Issue Type: Bug
> Components: java client
> Affects Versions: 3.3.1
> Environment: Windows 32 bits
> Reporter: pmpm47
> Assignee: Thomas Koch
> Priority: Critical
> Fix For: 3.3.4, 3.4.0
>
> Attachments: ZOOKEEPER-961.patch, ZOOKEEPER-961.patch,
> ZOOKEEPER-961b.patch
>
>
> Let's say you're using connection string "127.0.0.1:2182/foo".
> 1) put a childrenchanged watch on relative / (that is, on absolute path /foo)
> 2) stop the zk server
> 3) start the zk server
> 4) at this point, the client recovers the connection, and should have put
> back a watch on relative path /, but instead the client puts a watch on the
> *absolute* path /
> - if some other client adds or removes a node under /foo, nothing will happen
> - if some other client adds or removes a node under /, then you will get an
> error from the zk client library (string operation error)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira