You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Elliott Clark (JIRA)" <ji...@apache.org> on 2015/10/20 04:32:27 UTC

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

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

Elliott Clark commented on HBASE-14291:
---------------------------------------

This was needed on branch-1.2 pushed there.

> 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
>            Assignee: Ted Yu
>            Priority: Minor
>             Fix For: 2.0.0, 1.2.0, 1.3.0
>
>         Attachments: 14291-v1.txt, hbase-mwarhaftig-master-Matts-MBP.log
>
>
> 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)