You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2020/03/10 18:15:37 UTC

[hbase] branch branch-2 updated: HBASE-23954 SplitParent region should not be balanced (#1264)

This is an automated email from the ASF dual-hosted git repository.

stack pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
     new 30637f2  HBASE-23954 SplitParent region should not be balanced (#1264)
30637f2 is described below

commit 30637f2e5f47416805649027efbe6ada5a83a1b8
Author: niuyulin <ny...@163.com>
AuthorDate: Wed Mar 11 02:14:43 2020 +0800

    HBASE-23954 SplitParent region should not be balanced (#1264)
    
    Co-authored-by: niuyulin <ni...@xiaomi.com>
    
    Signed-off-by: Viraj Jasani <vj...@apache.org>
    Signed-off-by: Guanghao Zhang <zg...@apache.org>
    Signed-off-by: stack <st...@apache.org>
---
 .../apache/hadoop/hbase/master/assignment/RegionStates.java    | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
index 8c39365..ac41bb9 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
@@ -550,6 +550,9 @@ public class RegionStates {
         if (isTableDisabled(tableStateManager, node.getTable())) {
           continue;
         }
+        if (node.getRegionInfo().isSplitParent()) {
+          continue;
+        }
         Map<ServerName, List<RegionInfo>> tableResult =
             result.computeIfAbsent(node.getTable(), t -> new HashMap<>());
         final ServerName serverName = node.getRegionLocation();
@@ -572,9 +575,10 @@ public class RegionStates {
       for (ServerName serverName : onlineServers) {
         ServerStateNode serverNode = serverMap.get(serverName);
         if (serverNode != null) {
-          ensemble.put(serverNode.getServerName(), serverNode.getRegionInfoList().stream()
-            .filter(region -> !isTableDisabled(tableStateManager, region.getTable()))
-            .collect(Collectors.toList()));
+          ensemble.put(serverNode.getServerName(),
+            serverNode.getRegionInfoList().stream()
+                .filter(region -> !isTableDisabled(tableStateManager, region.getTable()))
+                .filter(region -> !region.isSplitParent()).collect(Collectors.toList()));
         } else {
           ensemble.put(serverName, new ArrayList<>());
         }