[ https://issues.apache.org/jira/browse/HBASE-16910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15604349#comment-15604349 ]
Guanghao Zhang commented on HBASE-16910: ---------------------------------------- Attach a patch for branch-1. It can be applied on branch-1 and branch-1.3. This bug was introduced by HBASE-13965, it was applied on branch-1.3. So this fix only need be applied on brnach-1.3 and branch-1, too. Thanks. > Avoid NPE when starting StochasticLoadBalancer > ---------------------------------------------- > > Key: HBASE-16910 > URL: https://issues.apache.org/jira/browse/HBASE-16910 > Project: HBase > Issue Type: Bug > Components: Balancer > Affects Versions: 2.0.0 > Reporter: Guanghao Zhang > Assignee: Guanghao Zhang > Priority: Minor > Fix For: 2.0.0 > > Attachments: HBASE-16910-branch-1.patch, HBASE-16910-v1.patch, > HBASE-16910.patch > > > When master start, it initialize StochasticLoadBalancer. > {code} > this.balancer.setClusterStatus(getClusterStatus()); > this.balancer.setMasterServices(this); > {code} > It first setClusterStatus(), then setMasterService(). But in setClusterStatus > method, it use master service which is not initialized. So it will throw NPE. > {code} > int tablesCount = isByTable ? services.getTableDescriptors().getAll().size() > : 1; > {code} > It happens when set isByTable is ture. -- This message was sent by Atlassian JIRA (v6.3.4#6332)