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

Zili Chen commented on ZOOKEEPER-3566:
--------------------------------------

TBH I think it requires we evolve {{WatcherEvent}} which is the actual message 
on wire but jute doesn't works well on schema evolution.

See also ZOOKEEPER-3290

CC [~andorm]

> Send event zxid to watches
> --------------------------
>
>                 Key: ZOOKEEPER-3566
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3566
>             Project: ZooKeeper
>          Issue Type: Improvement
>          Components: server
>            Reporter: Samuel Nelson
>            Priority: Major
>
> The zxid that triggered a watch should be sent to the watch because it's 
> useful for ordering events.
>  
> Use case:
> I'm watching a znode and syncing its contents (and whether it has been 
> deleted) to a third system. Without zxid attached to events it makes it very 
> difficult to maintain the order of events as they happened in ZK.
>  
> For example if I modify node `/a/b/c` and then delete it soon after, we have 
> two watch events, but no reliable way to communicate to our third system that 
> the modification happened before the deletion. If we are given the zxid we 
> can use that to order events.
>  
> Suggested implementation:
> Change `IWatchManager#triggerWatch` to take another parameter `Long zxid`. 
> Callers pass the zxid of the event.
> Add member `Long zxid` to `WatchedEvent`
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to