-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CURATOR-430] deletingChildrenIfNeeded maybe cannot delete children completely when multi-client delete concurrently #235
Conversation
Please include a test (something like the code you posted in the issue) for this. A good place to put the test is TestFrameworkEdges.java. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code looks good to me, except a minor comment.
try { | ||
children = zookeeper.getChildren(path, null); | ||
} catch (KeeperException.NoNodeException e) { | ||
// someone else has deleted the node it since we checked |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// someone else has deleted the node since we checked
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
haha... it's copied
Be sure this issue is bug? If yes, could you publish a fixed version based on v2.10.0? |
i met the same problem, could u please provide a fixed version ? |
Curator 4.0 is now compatible with both ZK 3.4.x and 3.5.x so the 2.x versions of Curator will not be updated. |
@hebelala hey - the test for this PR keeps failing and as I read it, I don't see how it ever worked. Can you look at this again? The code |
use
curatorFramework.delete().deletingChildrenIfNeeded().forPath(path)
, this sync api doesn't ignore the NoNodeException, causes the rest of children nodes will not be deleted perhaps.zookeeper.getChildren(path, null)
maybe throw NoNodeException, if the path doesn't exist.