Repository: hbase
Updated Branches:
  refs/heads/branch-1.2 7bfb930a8 -> 77d604951


HBASE-17265 Region left unassigned in master failover when region failed to 
open (Allan Yang)


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

Branch: refs/heads/branch-1.2
Commit: 77d604951d43d8e6994d5a66d9a4d8a77835e80d
Parents: 7bfb930
Author: tedyu <[email protected]>
Authored: Thu Feb 9 12:43:37 2017 -0800
Committer: Stephen Yuan Jiang <[email protected]>
Committed: Sun Feb 12 07:08:09 2017 -0800

----------------------------------------------------------------------
 .../org/apache/hadoop/hbase/master/AssignmentManager.java |  2 +-
 .../java/org/apache/hadoop/hbase/master/RegionStates.java | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/77d60495/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
index 414b751..433189b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
@@ -1064,7 +1064,7 @@ public class AssignmentManager extends ZooKeeperListener {
             failedOpenTracker.remove(encodedName);
           } else {
             // Handle this the same as if it were opened and then closed.
-            regionState = regionStates.updateRegionState(rt, State.CLOSED);
+            regionState = 
regionStates.setRegionStateTOCLOSED(rt.getRegionName(), sn);
             if (regionState != null) {
               // When there are more than one region server a new RS is 
selected as the
               // destination and the same is updated in the regionplan. 
(HBASE-5546)

http://git-wip-us.apache.org/repos/asf/hbase/blob/77d60495/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
----------------------------------------------------------------------
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
index c209d35..efb9f48 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
@@ -380,6 +380,16 @@ public class RegionStates {
    * Set the region state to CLOSED
    */
   public RegionState setRegionStateTOCLOSED(
+      final byte[] regionName,
+      final ServerName serverName) {
+    HRegionInfo regionInfo = getRegionInfo(regionName);
+    return setRegionStateTOCLOSED(regionInfo, serverName);
+  }
+
+  /**
+   * Set the region state to CLOSED
+   */
+  public RegionState setRegionStateTOCLOSED(
       final HRegionInfo regionInfo,
       final ServerName serverName) {
     ServerName sn = serverName;

Reply via email to