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 2017/12/01 06:32:57 UTC

hbase git commit: HBASE-19385 [1.3] TestReplicator failed 1.3 nightly

Repository: hbase
Updated Branches:
  refs/heads/branch-1.4 6c490625a -> 7968da0f9


HBASE-19385 [1.3] TestReplicator failed 1.3 nightly


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

Branch: refs/heads/branch-1.4
Commit: 7968da0f9e3b51980392bc8122e6284b0844e58e
Parents: 6c49062
Author: Michael Stack <st...@apache.org>
Authored: Wed Nov 29 23:06:31 2017 -0800
Committer: Michael Stack <st...@apache.org>
Committed: Thu Nov 30 22:32:17 2017 -0800

----------------------------------------------------------------------
 .../replication/regionserver/TestReplicator.java | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/7968da0f/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicator.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicator.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicator.java
index dbe7031..4b5d331 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicator.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestReplicator.java
@@ -22,6 +22,7 @@ import static org.junit.Assert.assertEquals;
 import java.io.IOException;
 import java.util.List;
 import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -97,6 +98,7 @@ public class TestReplicator extends TestReplicationBase {
       Waiter.waitFor(conf1, 60000, new Waiter.ExplainingPredicate<Exception>() {
         @Override
         public boolean evaluate() throws Exception {
+          LOG.info("Count=" + ReplicationEndpointForTest.getBatchCount());
           return ReplicationEndpointForTest.getBatchCount() >= NUM_ROWS;
         }
 
@@ -178,7 +180,7 @@ public class TestReplicator extends TestReplicationBase {
 
   public static class ReplicationEndpointForTest extends HBaseInterClusterReplicationEndpoint {
 
-    private static int batchCount;
+    private static AtomicInteger batchCount = new AtomicInteger(0);
     private static int entriesCount;
     private static final Object latch = new Object();
     private static AtomicBoolean useLatch = new AtomicBoolean(false);
@@ -197,17 +199,20 @@ public class TestReplicator extends TestReplicationBase {
     public static void await() throws InterruptedException {
       if (useLatch.get()) {
         LOG.info("Waiting on latch");
-        latch.wait();
+        synchronized(latch) {
+          latch.wait();
+        }
         LOG.info("Waited on latch, now proceeding");
       }
     }
 
     public static int getBatchCount() {
-      return batchCount;
+      return batchCount.get();
     }
 
     public static void setBatchCount(int i) {
-      batchCount = i;
+      LOG.info("SetBatchCount=" + i + ", old=" + getBatchCount());
+      batchCount.set(i);
     }
 
     public static int getEntriesCount() {
@@ -215,6 +220,7 @@ public class TestReplicator extends TestReplicationBase {
     }
 
     public static void setEntriesCount(int i) {
+      LOG.info("SetEntriesCount=" + i);
       entriesCount = i;
     }
 
@@ -240,8 +246,9 @@ public class TestReplicator extends TestReplicationBase {
           super.replicateEntries(rrs, entries, replicationClusterId, baseNamespaceDir,
             hfileArchiveDir);
           entriesCount += entries.size();
-          batchCount++;
-          LOG.info("Completed replicating batch " + System.identityHashCode(entries));
+          int count = batchCount.incrementAndGet();
+          LOG.info("Completed replicating batch " + System.identityHashCode(entries) +
+              " count=" + count);
         } catch (IOException e) {
           LOG.info("Failed to replicate batch " + System.identityHashCode(entries), e);
           throw e;