[ https://issues.apache.org/jira/browse/ZOOKEEPER-2217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14603844#comment-14603844 ]
Raul Gutierrez Segales commented on ZOOKEEPER-2217: --------------------------------------------------- getChildren (and getData, etc) do get the data & set their watches atomically, so how would inverting the order change anything? The only way of getting _every_ intermediate state would be by tailing the transaction logs, but at that point maybe ZooKeeper is not the right tool for the job. > event might lost before re-watch > -------------------------------- > > Key: ZOOKEEPER-2217 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2217 > Project: ZooKeeper > Issue Type: Improvement > Components: c client, java client > Affects Versions: 3.4.5, 3.4.6 > Environment: jdk1.7_45 on centos6.5 and ubuntu14.4 > Reporter: Caspian > > I use zk to monitor the children nodes under a path, eg: /servers. > when the client is told that children changes, I have to re-watch the path > again, during the peroid, it's possible that some children down, or some up. > And those events will be missed. > For now, my temporary solution is not to use getChildren(path, true...) to > get children and re-watch this path, but re-watch this path first, then get > the children. Thus non events can be ignored, but I don't know what will the > zk server be like if there are too much clients that act like this. > How do you think of this problem? Is there any other solutions? -- This message was sent by Atlassian JIRA (v6.3.4#6332)