[ https://issues.apache.org/jira/browse/ZOOKEEPER-3124?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fangmin Lv updated ZOOKEEPER-3124: ---------------------------------- Summary: Add the correct comment to show why we need the special logic to handle cversion and pzxid (was: Update the comment of special logic to handle cversion and pzxid in DataTree.processTxn) > Add the correct comment to show why we need the special logic to handle > cversion and pzxid > ------------------------------------------------------------------------------------------ > > 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 > Labels: pull-request-available > Fix For: 3.6.0 > > Time Spent: 1.5h > Remaining Estimate: 0h > > 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)