You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2014/07/16 23:54:32 UTC

git commit: HBASE-11517 TestReplicaWithCluster turns zombie (Mikhail Antonov) -- REAPPLY

Repository: hbase
Updated Branches:
  refs/heads/master 782b1456f -> 3455065a7


HBASE-11517 TestReplicaWithCluster turns zombie (Mikhail Antonov) -- REAPPLY


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

Branch: refs/heads/master
Commit: 3455065a75784d38fec348bd413c61dd316208f9
Parents: 782b145
Author: stack <st...@apache.org>
Authored: Wed Jul 16 14:54:20 2014 -0700
Committer: stack <st...@apache.org>
Committed: Wed Jul 16 14:54:20 2014 -0700

----------------------------------------------------------------------
 .../hbase/client/TestReplicaWithCluster.java    | 63 +++++++++-----------
 1 file changed, 29 insertions(+), 34 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/3455065a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestReplicaWithCluster.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestReplicaWithCluster.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestReplicaWithCluster.java
index 2c1f52b..d8baea4 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestReplicaWithCluster.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestReplicaWithCluster.java
@@ -65,6 +65,9 @@ public class TestReplicaWithCluster {
   private static final int NB_SERVERS = 2;
   private static final byte[] row = TestReplicaWithCluster.class.getName().getBytes();
   private static final HBaseTestingUtility HTU = new HBaseTestingUtility();
+
+  // second minicluster used in testing of replication
+  private static HBaseTestingUtility HTU2;
   private static final byte[] f = HConstants.CATALOG_FAMILY;
 
   private final static int REFRESH_PERIOD = 1000;
@@ -126,6 +129,7 @@ public class TestReplicaWithCluster {
 
   @AfterClass
   public static void afterClass() throws Exception {
+    HTU2.shutdownMiniCluster();
     HTU.shutdownMiniCluster();
   }
 
@@ -210,17 +214,14 @@ public class TestReplicaWithCluster {
 
     HTU.getHBaseCluster().stopMaster(0);
     HBaseAdmin admin = new HBaseAdmin(HTU.getConfiguration());
-    try {
-      nHdt = admin.getTableDescriptor(hdt.getTableName());
-      Assert.assertEquals("fams=" + Arrays.toString(nHdt.getColumnFamilies()),
+    nHdt =admin.getTableDescriptor(hdt.getTableName());
+    Assert.assertEquals("fams=" + Arrays.toString(nHdt.getColumnFamilies()),
         bHdt.getColumnFamilies().length + 1, nHdt.getColumnFamilies().length);
 
-      admin.disableTable(hdt.getTableName());
-      admin.deleteTable(hdt.getTableName());
-      HTU.getHBaseCluster().startMaster();
-    } finally {
-      if (admin != null) admin.close();
-    }
+    admin.disableTable(hdt.getTableName());
+    admin.deleteTable(hdt.getTableName());
+    HTU.getHBaseCluster().startMaster();
+    admin.close();
   }
 
   @Test (timeout=30000)
@@ -239,30 +240,28 @@ public class TestReplicaWithCluster {
     conf2.set(HConstants.HBASE_CLIENT_INSTANCE_ID, String.valueOf(-1));
     conf2.set(HConstants.ZOOKEEPER_ZNODE_PARENT, "/2");
     MiniZooKeeperCluster miniZK = HTU.getZkCluster();
-    HBaseTestingUtility HTU2 = new HBaseTestingUtility(conf2);
+
+    HTU2 = new HBaseTestingUtility(conf2);
     HTU2.setZkCluster(miniZK);
     HTU2.startMiniCluster(NB_SERVERS);
     LOG.info("Setup second Zk");
     HTU2.getHBaseAdmin().createTable(hdt, HBaseTestingUtility.KEYS_FOR_HBA_CREATE_TABLE);
 
     ReplicationAdmin admin = new ReplicationAdmin(HTU.getConfiguration());
-    try {
-      admin.addPeer("2", HTU2.getClusterKey());
-    } finally {
-      if (admin != null) admin.close();
-    }
+    admin.addPeer("2", HTU2.getClusterKey());
+    admin.close();
 
     Put p = new Put(row);
     p.add(row, row, row);
     final HTable table = new HTable(HTU.getConfiguration(), hdt.getTableName());
-    try {
-      table.put(p);
-      HTU.getHBaseAdmin().flush(table.getTableName());
-      LOG.info("Put & flush done on the first cluster. Now doing a get on the same cluster.");
+    table.put(p);
 
-      Waiter.waitFor(HTU.getConfiguration(), 1000, new Waiter.Predicate<Exception>() {
-        @Override
-        public boolean evaluate() throws Exception {
+    HTU.getHBaseAdmin().flush(table.getTableName());
+    LOG.info("Put & flush done on the first cluster. Now doing a get on the same cluster.");
+
+    Waiter.waitFor(HTU.getConfiguration(), 1000, new Waiter.Predicate<Exception>() {
+      @Override
+      public boolean evaluate() throws Exception {
         try {
           SlowMeCopro.cdl.set(new CountDownLatch(1));
           Get g = new Get(row);
@@ -275,16 +274,13 @@ public class TestReplicaWithCluster {
           SlowMeCopro.sleepTime.set(0);
         }
       }});
-    } finally {
-      if (table != null) table.close();
-    }
+    table.close();
     LOG.info("stale get on the first cluster done. Now for the second.");
 
     final HTable table2 = new HTable(HTU.getConfiguration(), hdt.getTableName());
-    try {
-      Waiter.waitFor(HTU.getConfiguration(), 1000, new Waiter.Predicate<Exception>() {
-        @Override
-        public boolean evaluate() throws Exception {
+    Waiter.waitFor(HTU.getConfiguration(), 1000, new Waiter.Predicate<Exception>() {
+      @Override
+      public boolean evaluate() throws Exception {
         try {
           SlowMeCopro.cdl.set(new CountDownLatch(1));
           Get g = new Get(row);
@@ -297,9 +293,7 @@ public class TestReplicaWithCluster {
           SlowMeCopro.sleepTime.set(0);
         }
       }});
-    } finally {
-      if (table2 != null) table2.close();
-    }
+    table2.close();
 
     HTU.getHBaseAdmin().disableTable(hdt.getTableName());
     HTU.deleteTable(hdt.getTableName());
@@ -307,10 +301,11 @@ public class TestReplicaWithCluster {
     HTU2.getHBaseAdmin().disableTable(hdt.getTableName());
     HTU2.deleteTable(hdt.getTableName());
 
-    HTU2.shutdownMiniCluster();
+    // We shutdown HTU2 minicluster later, in afterClass(), as shutting down
+    // the minicluster has negative impact of deleting all HConnections in JVM.
   }
 
-  @Test
+  @Test (timeout=30000)
   public void testBulkLoad() throws IOException {
     // Create table then get the single region for our new table.
     LOG.debug("Creating test table");