[
https://issues.apache.org/jira/browse/HBASE-20133?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Xiang Li updated HBASE-20133:
-----------------------------
Description:
In RSGroupBasedLoadBalancer#balanceCluster(clusterState), the logic could be
improved:
correctAssignment() builds a map for mis-placed and placed regions.
For mis-placed regions, the key(ServerName) is BOGUS_SERVER_NAME. Then the
logic gets those mis-paced regions out and calls findServerForRegion() several
times to find out the current host server, in order to build RegionPlan for
movement.
Some logic in correctAssignment() and findServerForRegion() could be merged so
as to build both corrected assignment and RegionPlan for mis-placed region in
one pass. As a result, findServerForRegion() could be removed if I get it
correctly.
was:
In RSGroupBasedLoadBalancer#balanceCluster(clusterState), the logic could be
improved:
correctAssignment() builds a map for mis-placed and placed regions.
For mis-placed regions, the key(ServerName) is BOGUS_SERVER_NAME. Then the
logic gets those mis-paced regions out and calls findServerForRegion() several
times to find out the current host server, in order to build RegionPlan for
movement.
Some logic in correctAssignment() and findServerForRegion() could be merged so
as to build both corrected assignment and RegionPlan for mis-placed region in
one pass.
> Calculate corrected assignment and build region movement plans for mis-placed
> regions in one pass
> -------------------------------------------------------------------------------------------------
>
> Key: HBASE-20133
> URL: https://issues.apache.org/jira/browse/HBASE-20133
> Project: HBase
> Issue Type: Improvement
> Components: rsgroup
> Reporter: Xiang Li
> Assignee: Xiang Li
> Priority: Critical
>
> In RSGroupBasedLoadBalancer#balanceCluster(clusterState), the logic could be
> improved:
> correctAssignment() builds a map for mis-placed and placed regions.
> For mis-placed regions, the key(ServerName) is BOGUS_SERVER_NAME. Then the
> logic gets those mis-paced regions out and calls findServerForRegion()
> several times to find out the current host server, in order to build
> RegionPlan for movement.
> Some logic in correctAssignment() and findServerForRegion() could be merged
> so as to build both corrected assignment and RegionPlan for mis-placed region
> in one pass. As a result, findServerForRegion() could be removed if I get it
> correctly.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)