Steven Cheng commented on ZOOKEEPER-550:
Thank you for the feedback Mahadev:
1) Updated the README.txt
2) I'll revise it to make it more clear.
3) A return is done after the delete in remove() and take(), only the client
that deletes the node can return the data, all others will get a
NoNodeException. If different exception is thrown then it will exit the
The loop can only continue if NoNodeExceptions are thrown, these are only
thrown when another client has remove()d or take()n the node.
4) The current patch takes in an acl, I mostly copied this handling from the
lock recipe, is there more handling I should add?
I would like to integrate more of the common pieces of the lock recipe into the
queue but I think I will leave this to later.
> Java Queue Recipe
> Key: ZOOKEEPER-550
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-550
> Project: Zookeeper
> Issue Type: New Feature
> Components: java client
> Affects Versions: 3.2.1
> Reporter: Steven Cheng
> Assignee: Steven Cheng
> Priority: Minor
> Fix For: 3.3.0
> Attachments: ZOOKEEPER-550.patch, ZOOKEEPER-550.patch,
> This patch adds a recipe for creating a distributed queue with ZooKeeper
> similar to the WriteLock recipe and some sequential tests. This early
> attempt follows the Java BlockingQueue interface, though it doesn't implement
> it since I don't think there's a good reason for it to be Iterable.
This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.