Index: hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java =================================================================== --- hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java (revision 1480438) +++ hbase-server/src/test/java/org/apache/hadoop/hbase/TestZooKeeper.java (working copy) @@ -22,6 +22,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import java.io.IOException; @@ -282,11 +283,32 @@ } /** - * Create a bunch of znodes in a hierarchy, try deleting one that has childs - * (it will fail), then delete it recursively, then delete the last znode + * Create a znode with data * @throws Exception */ @Test + public void testCreateWithParents() throws Exception { + ZooKeeperWatcher zkw = + new ZooKeeperWatcher(new Configuration(TEST_UTIL.getConfiguration()), + TestZooKeeper.class.getName(), null); + byte[] expectedData = new byte[] { 1, 2, 3 }; + ZKUtil.createWithParents(zkw, "/l1/l2/l3/l4/testCreateWithParents", expectedData); + byte[] data = ZKUtil.getData(zkw, "/l1/l2/l3/l4/testCreateWithParents"); + assertTrue(Bytes.equals(expectedData, data)); + ZKUtil.deleteNodeRecursively(zkw, "/l1"); + + ZKUtil.createWithParents(zkw, "/testCreateWithParents", expectedData); + data = ZKUtil.getData(zkw, "/testCreateWithParents"); + assertTrue(Bytes.equals(expectedData, data)); + ZKUtil.deleteNodeRecursively(zkw, "/testCreateWithParents"); + } + + /** + * Create a bunch of znodes in a hierarchy, try deleting one that has childs (it will fail), then + * delete it recursively, then delete the last znode + * @throws Exception + */ + @Test public void testZNodeDeletes() throws Exception { ZooKeeperWatcher zkw = new ZooKeeperWatcher( new Configuration(TEST_UTIL.getConfiguration()), Index: hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java =================================================================== --- hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java (revision 1480438) +++ hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java (working copy) @@ -1231,7 +1231,7 @@ return; } catch(KeeperException.NoNodeException nne) { createWithParents(zkw, getParent(znode)); - createWithParents(zkw, znode); + createWithParents(zkw, znode, data); } catch(InterruptedException ie) { zkw.interruptedException(ie); }