Mahadev Konar wrote:
And you have a success, then the version of the node that denots your
successful zoo_set() above is
= Version +1

Mahadev, that's the current implementation, but I wasn't aware we were exposing that detail as something users should rely on. Is it documented anywhere in the docs? If this is "user visible" we should document it, I thought we weren't exposing this for a reason...


On 12/12/08 11:36 AM, "Avery Ching" <> wrote:


Thanks for responding.

I agree that I can use zoo_exists and zoo_get to get the version of the
znode as it exists currently.

The problem I am trying to solve is that getting the version from struct
Stat in either zoo_exists or zoo_get may not be the same version that my
last successful zoo_set used.  I would like to get the version that denotes
my last successful zoo_set() operation to a particular znode.

I understand that the data and version to the znode may change immediately
one or multiple times after my zoo_set() and this is fine, but I would still
like to know the znode's versions of the data I set.


On 12/12/08 11:11 AM, "Patrick Hunt" <> wrote:

Avery Ching wrote:
If zoo_set() completes successfully with version != -1, can we assume that
version -> version + 1 for this znode?  If not, is there a way for the user
to get the version of the successfully completed zoo_set() operation?
You shouldn't rely on this, it may work, but it's not part of the
contract. Also, nothing says that some other client won't change the
node immediately after you change it.

You can access the version using zoo_exists or zoo_get - specifically
the "struct Stat stat" argument of either of those methods contains a
"version" member.


Reply via email to