[
https://issues.apache.org/jira/browse/HBASE-8937?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Liu Shaohui updated HBASE-8937:
-------------------------------
Labels: master wacter (was: )
> createEphemeralNodeAndWatch don't set watcher if the node is created
> successfully
> ---------------------------------------------------------------------------------
>
> Key: HBASE-8937
> URL: https://issues.apache.org/jira/browse/HBASE-8937
> Project: HBase
> Issue Type: Bug
> Components: master
> Reporter: Liu Shaohui
> Priority: Minor
> Labels: master, wacter
>
> CreateEphemeralNodeAndWatch in zkUtil don't set watcher if the node is
> created successfully. This is not consistent with the comment and may causes
> the ActiveMasterManager cannot get events that master node is deleted or
> changed.
> {code}
> public static boolean createEphemeralNodeAndWatch(ZooKeeperWatcher zkw,
> String znode, byte [] data)
> throws KeeperException {
> try {
> zkw.getRecoverableZooKeeper().create(znode, data, createACL(zkw, znode),
> CreateMode.EPHEMERAL);
> } catch (KeeperException.NodeExistsException nee) {
> if(!watchAndCheckExists(zkw, znode)) {
> // It did exist but now it doesn't, try again
> return createEphemeralNodeAndWatch(zkw, znode, data);
> }
> return false;
> } catch (InterruptedException e) {
> LOG.info("Interrupted", e);
> Thread.currentThread().interrupt();
> }
> return true;
> }
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira