[
https://issues.apache.org/jira/browse/ZOOKEEPER-3124?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16595379#comment-16595379
]
Fangmin Lv commented on ZOOKEEPER-3124:
---------------------------------------
Yup, it's a bit confusing, I don't think it fixed the deleting node issue I
reported in ZOOKEEPER-3125, and I cannot see the problem about creating node as
it commented in the code.
Thanks for checking, I'll send out a PR to remove these logic, will get more
attention there.
> Remove special logic to handle cversion and pzxid in DataTree.processTxn
> ------------------------------------------------------------------------
>
> Key: ZOOKEEPER-3124
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3124
> Project: ZooKeeper
> Issue Type: Improvement
> Components: server
> Reporter: Fangmin Lv
> Assignee: Fangmin Lv
> Priority: Major
> Fix For: 3.6.0
>
>
> There is special logic in the DataTree.processTxn to handle the NODEEXISTS
> when createNode, which is used to handle the cversion and pzxid not being
> updated due to fuzzy snapshot:
> https://github.com/apache/zookeeper/blob/master/src/java/main/org/apache/zookeeper/server/DataTree.java#L962-L994.
>
> But is this a real issue, or is it still an issue for now?
> In the current code, when serializing a parent node, we'll lock on it, and
> take a children snapshot at that time. If the child added after the parent is
> serialized to disk, then it won't be written out, so we shouldn't hit the
> issue where the child is in the snapshot but parent cversion and pzxid is not
> changed.
>
>
> I checked the JIRA ZOOKEEPER-1269 which added this code, it won't hit this
> issue as well, I'm not sure why we added this, am I missing anything? Can we
> just get rid of it?
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)