Repository: hbase
Updated Branches:
  refs/heads/branch-2 7343da417 -> 9b7c530b6


HBASE-21084 When cloning a snapshot including a split parent region, the split 
parent region of the cloned table will be online - addendum


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9b7c530b
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9b7c530b
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9b7c530b

Branch: refs/heads/branch-2
Commit: 9b7c530b6cdbdacb67823b3c491ede83ece7d28d
Parents: 7343da4
Author: Toshihiro Suzuki <brfrn...@gmail.com>
Authored: Mon Aug 27 23:40:03 2018 +0900
Committer: Toshihiro Suzuki <brfrn...@gmail.com>
Committed: Tue Aug 28 15:34:52 2018 +0900

----------------------------------------------------------------------
 .../org/apache/hadoop/hbase/client/RegionReplicaUtil.java     | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/9b7c530b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionReplicaUtil.java
----------------------------------------------------------------------
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionReplicaUtil.java
 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionReplicaUtil.java
index 9c5af37..259f581 100644
--- 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionReplicaUtil.java
+++ 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RegionReplicaUtil.java
@@ -175,12 +175,13 @@ public class RegionReplicaUtil {
       return regions;
     }
     List<RegionInfo> hRegionInfos = new ArrayList<>((newReplicaCount) * 
regions.size());
-    for (int i = 0; i < regions.size(); i++) {
-      if (RegionReplicaUtil.isDefaultReplica(regions.get(i))) {
+    for (RegionInfo ri : regions) {
+      if (RegionReplicaUtil.isDefaultReplica(ri) &&
+        (!ri.isOffline() || (!ri.isSplit() && !ri.isSplitParent()))) {
         // region level replica index starts from 0. So if oldReplicaCount was 
2 then the max replicaId for
         // the existing regions would be 1
         for (int j = oldReplicaCount; j < newReplicaCount; j++) {
-          
hRegionInfos.add(RegionReplicaUtil.getRegionInfoForReplica(regions.get(i), j));
+          hRegionInfos.add(RegionReplicaUtil.getRegionInfoForReplica(ri, j));
         }
       }
     }

Reply via email to