You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zg...@apache.org on 2019/05/29 02:59:47 UTC
[hbase] branch branch-2 updated (4f05b22 -> b035464)
This is an automated email from the ASF dual-hosted git repository.
zghao pushed a change to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git.
from 4f05b22 HBASE-22467 UI fixes to enable Knox proxying
new 8829b6f HBASE-22485 Fix failed ut TestClusterRestartFailover
new b035464 HBASE-22486 Fix flaky test TestLockManager
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../org/apache/hadoop/hbase/master/locking/LockProcedure.java | 6 +++++-
.../apache/hadoop/hbase/master/TestClusterRestartFailover.java | 8 ++++----
.../hbase/master/TestClusterRestartFailoverSplitWithoutZk.java | 4 ++--
3 files changed, 11 insertions(+), 7 deletions(-)
[hbase] 02/02: HBASE-22486 Fix flaky test TestLockManager
Posted by zg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
zghao pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git
commit b0354644f85e1b092acc61ad784c4f686107d1eb
Author: Guanghao <zg...@apache.org>
AuthorDate: Wed May 29 10:58:10 2019 +0800
HBASE-22486 Fix flaky test TestLockManager
---
.../java/org/apache/hadoop/hbase/master/locking/LockProcedure.java | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/locking/LockProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/locking/LockProcedure.java
index 3a87bbc..dc1e5bc 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/locking/LockProcedure.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/locking/LockProcedure.java
@@ -90,6 +90,8 @@ public final class LockProcedure extends Procedure<MasterProcedureEnv>
// DEFAULT_LOCAL_MASTER_LOCKS_TIMEOUT_MS (10 min) so that there is no need to heartbeat.
private final CountDownLatch lockAcquireLatch;
+ private volatile boolean suspended = false;
+
@Override
public TableName getTableName() {
return tableName;
@@ -219,9 +221,10 @@ public final class LockProcedure extends Procedure<MasterProcedureEnv>
locked.set(false);
// Maybe timeout already awakened the event and the procedure has finished.
synchronized (event) {
- if (!event.isReady()) {
+ if (!event.isReady() && suspended) {
setState(ProcedureProtos.ProcedureState.RUNNABLE);
event.wake(env.getProcedureScheduler());
+ suspended = false;
}
}
}
@@ -244,6 +247,7 @@ public final class LockProcedure extends Procedure<MasterProcedureEnv>
event.suspend();
event.suspendIfNotReady(this);
setState(ProcedureProtos.ProcedureState.WAITING_TIMEOUT);
+ suspended = true;
}
throw new ProcedureSuspendedException();
}
[hbase] 01/02: HBASE-22485 Fix failed ut TestClusterRestartFailover
Posted by zg...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
zghao pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git
commit 8829b6f28f344b6bc7ef3fd2a54d6c43fb9af05b
Author: Guanghao <zg...@apache.org>
AuthorDate: Wed May 29 10:39:57 2019 +0800
HBASE-22485 Fix failed ut TestClusterRestartFailover
---
.../apache/hadoop/hbase/master/TestClusterRestartFailover.java | 8 ++++----
.../hbase/master/TestClusterRestartFailoverSplitWithoutZk.java | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailover.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailover.java
index ad4613e..a3d8061 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailover.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailover.java
@@ -27,8 +27,8 @@ import org.apache.hadoop.hbase.master.assignment.ServerState;
import org.apache.hadoop.hbase.master.assignment.ServerStateNode;
import org.apache.hadoop.hbase.master.procedure.ServerCrashProcedure;
import org.apache.hadoop.hbase.procedure2.Procedure;
+import org.apache.hadoop.hbase.testclassification.LargeTests;
import org.apache.hadoop.hbase.testclassification.MasterTests;
-import org.apache.hadoop.hbase.testclassification.MediumTests;
import org.junit.Assert;
import org.junit.ClassRule;
import org.junit.Test;
@@ -36,7 +36,7 @@ import org.junit.experimental.categories.Category;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-@Category({ MasterTests.class, MediumTests.class })
+@Category({ MasterTests.class, LargeTests.class })
public class TestClusterRestartFailover extends AbstractTestRestartCluster {
@ClassRule
@@ -64,7 +64,7 @@ public class TestClusterRestartFailover extends AbstractTestRestartCluster {
.noneMatch(p -> p instanceof ServerCrashProcedure));
TableName tableName = TABLES[0];
ServerName testServer = UTIL.getHBaseCluster().getRegionServer(0).getServerName();
- UTIL.waitFor(10000, () -> getServerStateNode(testServer) != null);
+ UTIL.waitFor(30000, () -> getServerStateNode(testServer) != null);
ServerStateNode serverNode = getServerStateNode(testServer);
Assert.assertNotNull(serverNode);
Assert.assertTrue("serverNode should be ONLINE when cluster runs normally",
@@ -83,7 +83,7 @@ public class TestClusterRestartFailover extends AbstractTestRestartCluster {
UTIL.getHBaseCluster().waitUntilShutDown();
LOG.info("Starting cluster the second time");
UTIL.restartHBaseCluster(3, ports);
- UTIL.waitFor(10000, () -> UTIL.getHBaseCluster().getMaster().isInitialized());
+ UTIL.waitFor(30000, () -> UTIL.getHBaseCluster().getMaster().isInitialized());
serverNode = UTIL.getHBaseCluster().getMaster().getAssignmentManager().getRegionStates()
.getServerNode(testServer);
Assert.assertNotNull("serverNode should not be null when restart whole cluster", serverNode);
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.java
index 60bd10f..63d0f2b 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestClusterRestartFailoverSplitWithoutZk.java
@@ -18,12 +18,12 @@
package org.apache.hadoop.hbase.master;
import org.apache.hadoop.hbase.HBaseClassTestRule;
+import org.apache.hadoop.hbase.testclassification.LargeTests;
import org.apache.hadoop.hbase.testclassification.MasterTests;
-import org.apache.hadoop.hbase.testclassification.MediumTests;
import org.junit.ClassRule;
import org.junit.experimental.categories.Category;
-@Category({ MasterTests.class, MediumTests.class })
+@Category({ MasterTests.class, LargeTests.class })
public class TestClusterRestartFailoverSplitWithoutZk extends TestClusterRestartFailover {
@ClassRule