I have also experienced 3 delete events in the last year when there were no 
actual deletes in ZK.   I was using the delete events as a trigger to do an 
actual deletion in the system.  Since we experienced false deletes, I had to 
rethink the way I was using the PathChildrenCache.

Thank you,
Curtis Cantrell


From: Benjamin Jaton [mailto:[email protected]]
Sent: Monday, October 24, 2016 7:34 PM
To: [email protected]
Subject: Re: Curator PathChildrenCache sends delete events but no delete 
happened

Hi Cameron, thanks for your answer.
Yes I noticed that too, it seems to be coming from the ZK client layer.
I have tried to use the ZK Watcher API but I couldn't reproduce the issue when 
I was using them.
I will have a look at how PathChildrenCache does it and keep you posted.
Thanks
Benjamin

On Mon, Oct 24, 2016 at 4:08 PM, Cameron McKenzie 
<[email protected]<mailto:[email protected]>> wrote:
hey Benjamin,
I'm not aware of any such edge cases, but that does not mean that they don't 
exist. From the log:

2016-10-24 15:52:43 DEBUG o.a.z.ClientCnxn:889 - Got WatchedEvent 
state:SyncConnected type:NodeDeleted path:/benji2/123 for sessionid 
0x20014cf3d480003

This is being logged by the Zookeeper client itself that Curator is using. So 
it doesn't appear to be Curator inferring some sort of delete event. It looks 
like an explicit watched event coming from Zookeeper.

cheers

On Tue, Oct 25, 2016 at 10:04 AM, Benjamin Jaton 
<[email protected]<mailto:[email protected]>> wrote:
Hello,
I am using PathChildrenCache and I am receiving delete events even if there is 
no actual delete in ZK. I printed the WatchedEvent details for 2 of those 
delete events (of the same node /benji2/123) I received in the same JVM run:


2016-10-24 15:52:43 DEBUG o.a.z.ClientCnxn:889 - Got WatchedEvent 
state:SyncConnected type:NodeDeleted path:/benji2/123 for sessionid 
0x20014cf3d480003
[PathChildrenCacheListener] delete event for /benji2/123
PathChildrenCacheEvent{type=CHILD_REMOVED, data=ChildData{path='/benji2/123', 
stat=19808389169191,19808389169191,1477335789916,1477335789916,0,0,0,0,0,0,19808389169191
, data=[]}}
null
ChildData{path='/benji2/123', 
stat=19808389169191,19808389169191,1477335789916,1477335789916,0,0,0,0,0,0,19808389169191
, data=[]}
getAversion=0
2016-10-24 15:52:43 DEBUG o.a.z.ClientCnxn:867 - Got notification 
sessionid:0x20014cf3d480003
getCtime=1477335789916
getCversion=0
getCzxid=19808389169191
getMtime=1477335789916
2016-10-24 15:52:43 DEBUG o.a.z.ClientCnxn:889 - Got WatchedEvent 
state:SyncConnected type:NodeDeleted path:/benji2 for sessionid 
0x20014cf3d480003
getMzxid=19808389169191
getPzxid=19808389169191
getVersion=0

(...)

2016-10-24 15:58:06 DEBUG o.a.z.ClientCnxn:889 - Got WatchedEvent 
state:SyncConnected type:NodeDeleted path:/benji2/123 for sessionid 
0x20014cf3d480003
[PathChildrenCacheListener] delete event for /benji2/123
PathChildrenCacheEvent{type=CHILD_REMOVED, data=ChildData{path='/benji2/123', 
stat=19808389169191,19808389169191,1477335789916,1477335789916,0,0,0,0,0,0,19808389169191
, data=[]}}
null
2016-10-24 15:58:06 DEBUG o.a.z.ClientCnxn:867 - Got notification 
sessionid:0x20014cf3d480003
ChildData{path='/benji2/123', 
stat=19808389169191,19808389169191,1477335789916,1477335789916,0,0,0,0,0,0,19808389169191
, data=[]}
getAversion=0
getCtime=1477335789916
getCversion=0
getCzxid=19808389169191
getMtime=1477335789916
getMzxid=19808389169191
getPzxid=19808389169191
getVersion=0

Are there known edge cases where this can happen? Again there is no delete at 
all in ZK, I verified the transaction log of ZooKeeper, no delete is present).
Thanks,
Benjamin


The information contained in this message is proprietary and/or confidential. 
If you are not the intended recipient, please: (i) delete the message and all 
copies; (ii) do not disclose, distribute or use the message in any manner; and 
(iii) notify the sender immediately. In addition, please be aware that any 
message addressed to our domain is subject to archiving and review by persons 
other than the intended recipient. Thank you.

Reply via email to