curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Algirdas Rascius (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CURATOR-329) SharedValue.start() method does not update to current value if version of value currently stored in zookeeper is 0 (zero)
Date Tue, 24 May 2016 13:38:14 GMT
Algirdas Rascius created CURATOR-329:
----------------------------------------

             Summary: SharedValue.start() method does not update to current value if version
of value currently stored in zookeeper is 0 (zero)
                 Key: CURATOR-329
                 URL: https://issues.apache.org/jira/browse/CURATOR-329
             Project: Apache Curator
          Issue Type: Bug
          Components: Recipes
    Affects Versions: 2.10.0
            Reporter: Algirdas Rascius
            Priority: Blocker


When zookeeper node stores value with version 0 and SharedCount instance is created and started
for this node, getCount() method returns seedValue passed to SharedCount constructor instead
of actual value stored in zookeeper node. This only happens when zookeeper node version is
0 (zero).

For example:
{code}
// Node /count does not exists before the test
SharedCount count1 = new SharedCount(client, "/count", 10);
SharedCount count2 = new SharedCount(client, "/count", 20);
count1.start();
count2.start();
Assert.assertEquals(count1.getCount(), 10);
Assert.assertEquals(count2.getCount(), 10); // Should return 10, but returns 20 instead
{code}

Issue arrises because when constructed class SharedValue initializes instance variable currentValue
with version 0 and does not update value in updateValue(..) method if version returned by
zookeeper is 0.



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

Mime
View raw message