zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Fangmin Lv (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (ZOOKEEPER-3124) Remove special logic to handle cversion and pzxid in DataTree.processTxn
Date Thu, 06 Sep 2018 07:24:00 GMT

     [ https://issues.apache.org/jira/browse/ZOOKEEPER-3124?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Fangmin Lv resolved ZOOKEEPER-3124.
    Resolution: Won't Do

After revisiting the logic, I found it's not possible that the direct children is being creating
and serialized after the parent is serialized, but the children of children might be added
during fuzzy snapshot, so we do need to handle this.

> 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
>              Labels: pull-request-available
>             Fix For: 3.6.0
>          Time Spent: 1h 10m
>  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

View raw message