[ 
https://issues.apache.org/jira/browse/HBASE-11342?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-11342:
--------------------------

       Resolution: Fixed
    Fix Version/s: 0.98.4
                   0.99.0
     Hadoop Flags: Reviewed
           Status: Resolved  (was: Patch Available)

Committed to master and to 0.98. Thank you for the patch [~qianxiZhang]

> The method isChildReadLock in class ZKInterProcessLockBase is wrong
> -------------------------------------------------------------------
>
>                 Key: HBASE-11342
>                 URL: https://issues.apache.org/jira/browse/HBASE-11342
>             Project: HBase
>          Issue Type: Bug
>          Components: Zookeeper
>    Affects Versions: 0.99.0, 0.98.3
>            Reporter: Qianxi Zhang
>            Assignee: Qianxi Zhang
>            Priority: Minor
>             Fix For: 0.99.0, 0.98.4
>
>         Attachments: HBASE_11342.patch
>
>
> The method isChildReadLock in class ZKInterProcessLockBase may be wrong, 
> which determines whether the lock is readLock or not. So we should compare 
> the node name with READ_LOCK_CHILD_NODE_PREFIX rather than 
> WRITE_LOCK_CHILD_NODE_PREFIX. Since there is no other method to invoke the 
> method "isChildReadLock" now, we have not encountered an error.
> {code}
>   protected static boolean isChildReadLock(String child) {
>     int idx = child.lastIndexOf(ZKUtil.ZNODE_PATH_SEPARATOR);
>     String suffix = child.substring(idx + 1);
>     return suffix.startsWith(WRITE_LOCK_CHILD_NODE_PREFIX);
>   }
> {code}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to