Patrick,

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.

Avery

On 12/12/08 11:11 AM, "Patrick Hunt" <ph...@apache.org> 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.
> 
> Patrick

Reply via email to