[ https://issues.apache.org/jira/browse/HBASE-7847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13934563#comment-13934563 ]
Rakesh R commented on HBASE-7847: --------------------------------- bq.When does ZKUtil.listSubTreeBFS show up in zk? Is it a recent version of zk? I could see ZKUtil.listSubTreeBFS api is available from 3.4.0 onwards. Reference JIRA ZOOKEEPER-839, ZKUtil added as part of this. bq.Has it always been there? AFAIK, ZKUtil apis are already being used extensively in many apache projects (including HADOOP, BOOKKEEPER etc). Anyway I'll have a word with Flavio and come back. bq.Is this the only 'new' zk call this patch introduces? Yes, actually list sub tree is using getChildren() api for traversing and will be called multiple times. ZKUtil#deleteRecursive() internally uses the ZKUtil.listSubTreeBFS() api to prepare the hierarchy, then it wll call zk#delete api for each path. Existing:- zk#getChildren() calls + zk#delete calls for each path New approach:- zk#getChildren() calls + one multi() api call > Use zookeeper multi to clear znodes > ----------------------------------- > > Key: HBASE-7847 > URL: https://issues.apache.org/jira/browse/HBASE-7847 > Project: HBase > Issue Type: Sub-task > Reporter: Ted Yu > Attachments: 7847-v1.txt, HBASE-7847.patch, HBASE-7847.patch, > HBASE-7847.patch > > > In ZKProcedureUtil, clearChildZNodes() and clearZNodes(String procedureName) > should utilize zookeeper multi so that they're atomic -- This message was sent by Atlassian JIRA (v6.2#6252)