I need to do something like the following:
Stat stats = nodeToSet.getStat();
if (stats != null) {
int version = stats.getVersion();
stats = client.getZk().setData(path, data, version);
(data was preset in code not shown). Since I have multiple processes
all vying to do things, in the worst case (which happens too
frequently), two processes execute the above at basically the same time,
which causes errors. I thought I might be able to use Multi to do this
atomically, but I cannot figure out how to use the result (the version
number above) from one Op in a later Op. Is this possible?
This was the simplest example I could find, but this happens often -
usually with Paths. For instance, sometimes I create a zookeeper node
and want a "LOCK" node underneath it. If I follow the "recipe" and use
an ephemeral sequential node as the lock, how can I refer to sequence in
a Path in subsequent Op added to a "multi" or is there any way to do it
atomically? Sorry that was so very wordy. What I was really trying to
ask, is how do I create and lock a node atomically?
thanks for any help, insight!
joe