hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-6663) NPE race in HConnection if zookeeper is reset
Date Wed, 05 Sep 2012 00:59:26 GMT

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

Hudson commented on HBASE-6663:
-------------------------------

Integrated in HBase-0.94-security-on-Hadoop-23 #7 (See [https://builds.apache.org/job/HBase-0.94-security-on-Hadoop-23/7/])
    HBASE-6663 NPE race in HConnection if zookeeper is reset (Gregory Chanan) (Revision 1377215)

     Result = FAILURE
larsh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
* /hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/client/TestHConnection.java

                
> NPE race in HConnection if zookeeper is reset
> ---------------------------------------------
>
>                 Key: HBASE-6663
>                 URL: https://issues.apache.org/jira/browse/HBASE-6663
>             Project: HBase
>          Issue Type: Bug
>          Components: client
>    Affects Versions: 0.94.1
>            Reporter: Gregory Chanan
>            Assignee: Gregory Chanan
>            Priority: Minor
>             Fix For: 0.94.2
>
>         Attachments: HBASE-6663.patch
>
>
> On 0.94, HConnectionImplementation has code like this:
> {code}
> getZooKeeperWatcher();
> String tableNameStr = Bytes.toString(tableName);
> try {
>   if (online) {
>     return ZKTable.isEnabledTable(this.zooKeeper, tableNameStr);
>   }
>   return ZKTable.isDisabledTable(this.zooKeeper, tableNameStr);
> {code}
> The issue is that between the time that getZooKeeperWatcher is called and this.zooKeeper
is used, this.zooKeeper can be set to null by another thread via resetZooKeeperTrackers.
> The cleanest solution to me seems to be to cache the value.  I have a patch that does
this and a test that fails without the patch and passes with it.
> This issue doesn't appear on 0.96 because the zookeeper code has been separated in HBASE-5399.

--
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

Mime
View raw message