Sam Baskinger commented on ZOOKEEPER-767:

Thanks for the feedback Benjamin,

Perhaps I misread the recipe or am missing the philosophy of ZK's atomicity. It 
wouldn't be the first time. :) To your points:

We do the create to ensure that we, at some point, will hold a lock. I do want 
to do the create, ensuring my turn, and then wait until I'm at the front of the 
line (front being defined in the exclusive or shared way).

There should be a unit test that ensure that this does indeed happen, 
semantically. Exclusive locks block all shared access, if I take your meaning 

I thought the API guaranteed that in the event of a connection loss the 
EPHEMERAL creation property would guarantee that when the session timed out the 
file would be removed and watchers would be signaled.

All but those behind me in the line of locks. This could certainly be optimized 
and is something I thought about, but moved past to get the rough 
implementation in flight.

If the above 4 points hold, then extending the other implementation may be 
better for the community. :) I hope you'll include the code, but if not, we're 
very happy with it and appreciate ZooKeeper! Keep up the fine work. :)

What do you think? What did I miss? :)

Sam Baskinger


> Submitting Demo/Recipe Shared / Exclusive Lock Code
> ---------------------------------------------------
>                 Key: ZOOKEEPER-767
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-767
>             Project: Zookeeper
>          Issue Type: Improvement
>          Components: recipes
>    Affects Versions: 3.3.0
>            Reporter: Sam Baskinger
>            Assignee: Sam Baskinger
>            Priority: Minor
>             Fix For: 3.4.0
>         Attachments: ZOOKEEPER-767.patch, ZOOKEEPER-767.patch
> Networked Insights would like to share-back some code for shared/exclusive 
> locking that we are using in our labs.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

Reply via email to