You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Whitney Sorenson (JIRA)" <ji...@apache.org> on 2016/02/05 16:32:39 UTC

[jira] [Created] (ZOOKEEPER-2362) ZooKeeper multi / transaction allows partial read

Whitney Sorenson created ZOOKEEPER-2362:
-------------------------------------------

             Summary: ZooKeeper multi / transaction allows partial read
                 Key: ZOOKEEPER-2362
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2362
             Project: ZooKeeper
          Issue Type: Bug
            Reporter: Whitney Sorenson
            Priority: Critical


In this thread http://mail-archives.apache.org/mod_mbox/zookeeper-user/201602.mbox/%3CCAPbqGzicBkLLyVDm7RFM20z0y3X1v1P-C9-1%3D%3D1DDqRDTzdOmQ%40mail.gmail.com%3E , I discussed an issue I've now seen in multiple environments:

In a multi (using Curator), I write 2 new nodes. At some point, I issue 2 reads for these new nodes. In one read, I see one of the new nodes. In a subsequent read, I fail to see the other new node:

1. Starting state : { /foo = <does not exist>, /bar = <does not exist> }
2. In a multi, write: { /foo = A, /bar = B}
3. Read /foo as A
4. Read /bar as <does not exist> 

#3 and #4 are issued 100% sequentially.

It is not known at what point during #2, #3 starts.

Note: the reads are getChildren() calls.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)