You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2013/07/28 07:03:48 UTC

[jira] [Commented] (HBASE-8937) createEphemeralNodeAndWatch don't set watcher if the node is created successfully

    [ https://issues.apache.org/jira/browse/HBASE-8937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13721869#comment-13721869 ] 

stack commented on HBASE-8937:
------------------------------

Do you have a patch [~liushaohui]?
                
> 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