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

ASF GitHub Bot commented on CURATOR-388:
----------------------------------------

GitHub user Randgalt opened a pull request:

    https://github.com/apache/curator/pull/249

    [CURATOR-388] PathChildrenCache stops working if container node is 
auto-removed

    PathChildrenCache stops working if container node is auto-removed and later 
recreated - test and a fix

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/apache/curator CURATOR-388

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/curator/pull/249.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #249
    
----
commit 21b0877842d12c61f5c8c7f886d596809e12a628
Author: randgalt <randgalt@...>
Date:   2017-12-20T20:39:37Z

    PathChildrenCache stops working if container node is auto-removed and later 
recreated - test and a fix

----


> PathChildrenCache stops working if container node is auto-removed and later 
> recreated
> -------------------------------------------------------------------------------------
>
>                 Key: CURATOR-388
>                 URL: https://issues.apache.org/jira/browse/CURATOR-388
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Recipes
>    Affects Versions: 3.2.1
>         Environment: zookeeper 3.5.2-alpha
>            Reporter: Rhys Yarranton
>            Assignee: Jordan Zimmerman
>             Fix For: 4.0.1
>
>         Attachments: EmptyPathChildrenCacheTest.java
>
>
> PathChildrenCache uses EnsureContainers to create the path as a container(if 
> it does not already exist).  If at some point that container is empty, 
> ZooKeeper may remove it.  If at some later point the path is recreated and a 
> child node added, the PathChildrenCache will not detect it.  No event will be 
> fired, nor will the child node appear in getCurrentData().
> The attached test reproduces the problem most of the time if the ZooKeeper 
> server has znode.container.checkIntervalMs reduced to 1000.
> A workaround is to explicitly create the path as a non-container before 
> starting the PathChildrenCache.
> NB there are two related problems here.  One is that it has trouble handling 
> containers.  More serious is that it creates a container, thus running itself 
> into trouble.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to