[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13102877#comment-13102877
 ] 

[email protected] commented on ZOOKEEPER-961:
---------------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1809/
-----------------------------------------------------------

Review request for zookeeper.


Summary
-------

- chroot is not a property of the ClientCnxn anymore but of the ZooKeeper class
- ClientCnxn has no reference to ZooKeeper anymore
- The WatchManager stores a reference to the chroot String with every watcher. 
It's not that much overhead since it's the same String instance all the time. 
The idea is, to prepare for additional patches that make it possible to use the 
same ClientCnxn with different ZooKeeper client instances that have different 
chroots.


This addresses bug ZOOKEEPER-961.
    https://issues.apache.org/jira/browse/ZOOKEEPER-961


Diffs
-----

  src/java/main/org/apache/zookeeper/ClientCnxn.java 78b2eb2 
  src/java/main/org/apache/zookeeper/ClientWatchManager.java d56374d 
  src/java/main/org/apache/zookeeper/ZooKeeper.java e82eaa0 
  src/java/main/org/apache/zookeeper/client/WatchManager.java PRE-CREATION 
  src/java/main/org/apache/zookeeper/client/WatchRegistration.java PRE-CREATION 
  src/java/test/org/apache/zookeeper/TestableZooKeeper.java f8344b6 
  src/java/test/org/apache/zookeeper/test/WatcherTest.java 90ec513 

Diff: https://reviews.apache.org/r/1809/diff


Testing
-------


Thanks,

Thomas



> 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

        

Reply via email to