Author: stack
Date: Fri Sep 23 16:47:44 2011
New Revision: 1174879

URL: http://svn.apache.org/viewvc?rev=1174879&view=rev
Log:
HBASE-4446 Rolling restart RSs scenario, regions could stay in OPENING state

Modified:
    hbase/branches/0.92/CHANGES.txt
    
hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java

Modified: hbase/branches/0.92/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hbase/branches/0.92/CHANGES.txt?rev=1174879&r1=1174878&r2=1174879&view=diff
==============================================================================
--- hbase/branches/0.92/CHANGES.txt (original)
+++ hbase/branches/0.92/CHANGES.txt Fri Sep 23 16:47:44 2011
@@ -295,6 +295,8 @@ Release 0.91.0 - Unreleased
                (David Revell)
    HBASE-4452  Possibility of RS opening a region though tickleOpening fails 
due to
                znode version mismatch (Ramkrishna)
+   HBASE-4446  Rolling restart RSs scenario, regions could stay in OPENING 
state
+               (Ming Ma)
 
   IMPROVEMENTS
    HBASE-3290  Max Compaction Size (Nicolas Spiegelberg via Stack)  

Modified: 
hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
URL: 
http://svn.apache.org/viewvc/hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java?rev=1174879&r1=1174878&r2=1174879&view=diff
==============================================================================
--- 
hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
 (original)
+++ 
hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
 Fri Sep 23 16:47:44 2011
@@ -1523,7 +1523,7 @@ public class AssignmentManager extends Z
     // to OFFLINE state meanwhile the RS could have opened the corresponding
     // region and the state in znode will be RS_ZK_REGION_OPENED.
     // For all other cases we can change the in-memory state to OFFLINE.
-    if (hijack && 
+    if (hijack &&
         (state.getState().equals(RegionState.State.PENDING_OPEN) || 
             state.getState().equals(RegionState.State.OPENING))) {
       state.update(RegionState.State.PENDING_OPEN);
@@ -2504,7 +2504,8 @@ public class AssignmentManager extends Z
         LOG.debug("Region has transitioned to OPENED, allowing "
             + "watched event handlers to process");
         return;
-      } else if (dataInZNode.getEventType() != EventType.RS_ZK_REGION_OPENING) 
{
+      } else if (dataInZNode.getEventType() != EventType.RS_ZK_REGION_OPENING 
&&
+          dataInZNode.getEventType() != EventType.RS_ZK_REGION_FAILED_OPEN ) {
         LOG.warn("While timing out a region in state OPENING, "
             + "found ZK node in unexpected state: "
             + dataInZNode.getEventType());


Reply via email to