[
https://issues.apache.org/jira/browse/HBASE-5790?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jesse Yates updated HBASE-5790:
-------------------------------
Attachment: java_HBASE-5790.patch
Attaching patch and simple test case for recoverableZK. No need to update
ZKUtil test since deleteRecurisive already covered.
Wish there was a better way to test this out...tried doing a better version via
Mockito, but seems to not be able to catch the actual method invocations and
let me do extra work (though doAnswer should support it).
Either way, did a hacked version where it dumps a node in middle while
collecting children (setting a callable in the test that is called periodically
in the delete), and seemed to work fine. Not recommending that we pursue the
same course for general testing, but just putting this up here for peace of
mind for all.
> ZKUtil deleteRecurisively should be a recoverable operation
> -----------------------------------------------------------
>
> Key: HBASE-5790
> URL: https://issues.apache.org/jira/browse/HBASE-5790
> Project: HBase
> Issue Type: Improvement
> Reporter: Jesse Yates
> Assignee: Jesse Yates
> Labels: zookeeper
> Fix For: 0.96.0, 0.94.1
>
> Attachments: java_HBASE-5790.patch
>
>
> As of 3.4.3 Zookeeper now has full, multi-operation transaction. This means
> we can wholesale delete chunks of the zk tree and ensure that we don't have
> any pesky recursive delete issues where we delete the children of a node, but
> then a child joins before deletion of the parent. Even without transactions,
> this should be the behavior, but it is possible to make it much cleaner now
> that we have this new feature in zk.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira