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 2018/05/02 13:39:57 UTC
hbase git commit: HBASE-20414 TestLockProcedure#testMultipleLocks may
fail on slow machine
Repository: hbase
Updated Branches:
refs/heads/master 5bdb52af2 -> 2e9b96e4f
HBASE-20414 TestLockProcedure#testMultipleLocks may fail on slow machine
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/2e9b96e4
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/2e9b96e4
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/2e9b96e4
Branch: refs/heads/master
Commit: 2e9b96e4f14c2802b59c6037cbfe4a427ec93bea
Parents: 5bdb52a
Author: tedyu <yu...@gmail.com>
Authored: Wed May 2 06:39:51 2018 -0700
Committer: tedyu <yu...@gmail.com>
Committed: Wed May 2 06:39:51 2018 -0700
----------------------------------------------------------------------
.../apache/hadoop/hbase/master/locking/TestLockProcedure.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/2e9b96e4/hbase-server/src/test/java/org/apache/hadoop/hbase/master/locking/TestLockProcedure.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/locking/TestLockProcedure.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/locking/TestLockProcedure.java
index c985fa7..8fa7747 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/locking/TestLockProcedure.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/locking/TestLockProcedure.java
@@ -300,6 +300,7 @@ public class TestLockProcedure {
// Acquire namespace lock, then queue other locks.
long nsProcId = queueLock(nsLock);
assertTrue(awaitForLocked(nsProcId, 2000));
+ long start = System.currentTimeMillis();
sendHeartbeatAndCheckLocked(nsProcId, true);
long table1ProcId = queueLock(tableLock1);
long table2ProcId = queueLock(tableLock2);
@@ -307,7 +308,9 @@ public class TestLockProcedure {
long regions2ProcId = queueLock(regionsLock2);
// Assert tables & region locks are waiting because of namespace lock.
- Thread.sleep(HEARTBEAT_TIMEOUT / 2);
+ long now = System.currentTimeMillis();
+ // leave extra 10 msec in case more than half the HEARTBEAT_TIMEOUT has passed
+ Thread.sleep(Math.min(HEARTBEAT_TIMEOUT / 2, Math.max(HEARTBEAT_TIMEOUT-(now-start)-10, 0)));
sendHeartbeatAndCheckLocked(nsProcId, true);
sendHeartbeatAndCheckLocked(table1ProcId, false);
sendHeartbeatAndCheckLocked(table2ProcId, false);