You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Matt Warhaftig (JIRA)" <ji...@apache.org> on 2015/08/22 06:29:45 UTC

[jira] [Created] (HBASE-14291) NPE On StochasticLoadBalancer Balance Involving RS With No Regions

Matt Warhaftig created HBASE-14291:
--------------------------------------

             Summary: NPE On StochasticLoadBalancer Balance Involving RS With No Regions
                 Key: HBASE-14291
                 URL: https://issues.apache.org/jira/browse/HBASE-14291
             Project: HBase
          Issue Type: Bug
          Components: Balancer
    Affects Versions: 2.0.0
         Environment: Pseudo-distributed (2 local RegionServers), Hadoop 2.5.1, Java 1.7.0_71
            Reporter: Matt Warhaftig
            Priority: Minor


When StochasticLoadBalancer attempts to balance a local RS with multiple regions with another local RS that had no regions the HBase shell call of 'balancer' gets the following NPE:
{noformat}
ERROR: java.io.IOException
	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2175)
	at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:106)
	at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
	at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
	at org.apache.hadoop.hbase.master.balancer.BaseLoadBalancer$Cluster.getLeastLoadedTopServerForRegion(BaseLoadBalancer.java:863)
	at org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer$LocalityBasedCandidateGenerator.generate(StochasticLoadBalancer.java:724)
	at org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.balanceCluster(StochasticLoadBalancer.java:325)
	at org.apache.hadoop.hbase.master.balancer.StochasticLoadBalancer.balanceCluster(StochasticLoadBalancer.java:263)
	at org.apache.hadoop.hbase.master.HMaster.balance(HMaster.java:1264)
	at org.apache.hadoop.hbase.master.MasterRpcServices.balance(MasterRpcServices.java:413)
	at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:52450)
	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2133)
	... 4 more
{noformat}

Issue only occurs when one of the RSs has no regions before balancing.  Also, unsure if distributed RSs would also have same issue.  Attached 'hbase-mwarhaftig-master-Matts-MBP.log' is master's log of the error occurring.  

SimpleLoadBalancer rebalances correctly when used in the same situation.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)