You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2011/11/12 05:47:35 UTC
svn commit: r1201187 - in /hbase/branches/0.92: CHANGES.txt
src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
Author: tedyu
Date: Sat Nov 12 04:47:35 2011
New Revision: 1201187
URL: http://svn.apache.org/viewvc?rev=1201187&view=rev
Log:
HBASE-4478 Improve AssignmentManager.handleRegion so that it can process certain ZK state
in the case of RS offline
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=1201187&r1=1201186&r2=1201187&view=diff
==============================================================================
--- hbase/branches/0.92/CHANGES.txt (original)
+++ hbase/branches/0.92/CHANGES.txt Sat Nov 12 04:47:35 2011
@@ -419,6 +419,8 @@ Release 0.92.0 - Unreleased
HBASE-4511 There is data loss when master failovers
HBASE-4577 Region server reports storefileSizeMB bigger than
storefileUncompressedSizeMB (gaojinchao)
+ HBASE-4478 Improve AssignmentManager.handleRegion so that it can process certain ZK state
+ in the case of RS offline
TESTS
HBASE-4492 TestRollingRestart fails intermittently
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=1201187&r1=1201186&r2=1201187&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 Sat Nov 12 04:47:35 2011
@@ -24,6 +24,7 @@ import java.io.DataOutput;
import java.io.IOException;
import java.lang.Thread.UncaughtExceptionHandler;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Date;
import java.util.Collections;
import java.util.HashMap;
@@ -163,6 +164,10 @@ public class AssignmentManager extends Z
//Thread pool executor service for timeout monitor
private java.util.concurrent.ExecutorService threadPoolExecutorService;
+
+ private List<EventType> ignoreStatesRSOffline = Arrays.asList(new EventType[]{
+ EventType.RS_ZK_REGION_FAILED_OPEN, EventType.RS_ZK_REGION_CLOSED });
+
/**
* Constructs a new assignment manager.
@@ -614,7 +619,8 @@ public class AssignmentManager extends Z
String prettyPrintedRegionName = HRegionInfo.prettyPrint(encodedName);
// Verify this is a known server
if (!serverManager.isServerOnline(sn) &&
- !this.master.getServerName().equals(sn)) {
+ !this.master.getServerName().equals(sn)
+ && !ignoreStatesRSOffline.contains(data.getEventType())) {
LOG.warn("Attempted to handle region transition for server but " +
"server is not online: " + prettyPrintedRegionName);
return;