You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2014/12/01 04:49:46 UTC
hbase git commit: HBASE-12479 Backport HBASE-11689 (Track meta in
transition) (Virag Kothari); addendum
Repository: hbase
Updated Branches:
refs/heads/0.98 9e9d3f4ce -> 679e164e3
HBASE-12479 Backport HBASE-11689 (Track meta in transition) (Virag Kothari); addendum
Test fix for TestAssignmentManagerOnCluster
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/679e164e
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/679e164e
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/679e164e
Branch: refs/heads/0.98
Commit: 679e164e39066dfe9129fe7fada2fa5c3aac5b98
Parents: 9e9d3f4
Author: Andrew Purtell <ap...@apache.org>
Authored: Sun Nov 30 22:46:52 2014 -0500
Committer: Andrew Purtell <ap...@apache.org>
Committed: Sun Nov 30 22:46:55 2014 -0500
----------------------------------------------------------------------
.../master/TestAssignmentManagerOnCluster.java | 21 +++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/679e164e/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java
index 36acdfa..57be3de 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java
@@ -65,6 +65,7 @@ import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.util.ConfigUtil;
import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
import org.apache.hadoop.hbase.util.FSUtils;
+import org.apache.hadoop.hbase.util.Threads;
import org.apache.hadoop.hbase.zookeeper.ZKAssign;
import org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher;
import org.apache.zookeeper.KeeperException;
@@ -208,7 +209,7 @@ public class TestAssignmentManagerOnCluster {
TEST_UTIL.getMiniHBaseCluster().getConf().setInt("hbase.assignment.maximum.attempts", 20);
TEST_UTIL.getMiniHBaseCluster().stopMaster(0);
TEST_UTIL.getMiniHBaseCluster().startMaster(); //restart the master so that conf take into affect
-
+
ServerName deadServer = null;
HMaster master = null;
try {
@@ -263,6 +264,11 @@ public class TestAssignmentManagerOnCluster {
ServerName masterServerName = TEST_UTIL.getMiniHBaseCluster().getMaster().getServerName();
TEST_UTIL.getMiniHBaseCluster().stopMaster(masterServerName);
TEST_UTIL.getMiniHBaseCluster().startMaster();
+ // Wait till master is active and is initialized
+ while (TEST_UTIL.getMiniHBaseCluster().getMaster() == null
+ || !TEST_UTIL.getMiniHBaseCluster().getMaster().isInitialized()) {
+ Threads.sleep(1);
+ }
}
}
@@ -626,6 +632,19 @@ public class TestAssignmentManagerOnCluster {
break;
}
}
+ ServerName metaServerName = am.getRegionStates().getRegionServerOfRegion(HRegionInfo.FIRST_META_REGIONINFO);
+ // We don't want to process shutdown of meta, so move meta if required
+ if (ServerName.isSameHostnameAndPort(destServerName, metaServerName)) {
+ int i = TEST_UTIL.getHBaseCluster().getServerWithMeta();
+ HRegionServer rs = TEST_UTIL.getHBaseCluster().getRegionServer(i == 0 ? 1 : 0);
+ TEST_UTIL
+ .getHBaseCluster()
+ .getMaster()
+ .move(HRegionInfo.FIRST_META_REGIONINFO.getEncodedNameAsBytes(),
+ Bytes.toBytes(rs.getServerName().getServerName()));
+ am.waitForAssignment(HRegionInfo.FIRST_META_REGIONINFO);
+ }
+
am.regionOffline(hri);
ZooKeeperWatcher zkw = TEST_UTIL.getHBaseCluster().getMaster().getZooKeeper();
am.getRegionStates().updateRegionState(hri, State.PENDING_OPEN, destServerName);