HBASE-20533 Fix the flaky TestAssignmentManagerMetrics
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/81228f72 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/81228f72 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/81228f72 Branch: refs/heads/HBASE-19064 Commit: 81228f72d063121f2138fd3130b129ec69f943ba Parents: 1cd2b56 Author: huzheng <open...@gmail.com> Authored: Mon May 28 17:52:13 2018 +0800 Committer: huzheng <open...@gmail.com> Committed: Tue May 29 09:38:47 2018 +0800 ---------------------------------------------------------------------- .../hbase/master/assignment/RegionTransitionProcedure.java | 5 ----- .../hadoop/hbase/master/TestAssignmentManagerMetrics.java | 8 +++++--- 2 files changed, 5 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/81228f72/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java index 253250d..62b6bc4 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java @@ -41,11 +41,6 @@ import org.apache.yetus.audience.InterfaceAudience; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting; - -import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos.RegionTransitionState; -import org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionStateTransition.TransitionCode; - /** * Base class for the Assign and Unassign Procedure. * http://git-wip-us.apache.org/repos/asf/hbase/blob/81228f72/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java index 4c9d0e3..7c338cd 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerMetrics.java @@ -91,6 +91,8 @@ public class TestAssignmentManagerMetrics { conf.setInt(HConstants.HBASE_CLIENT_OPERATION_TIMEOUT, 2500); // set a small interval for updating rit metrics conf.setInt(AssignmentManager.RIT_CHORE_INTERVAL_MSEC_CONF_KEY, MSG_INTERVAL); + // set a small assign attempts for avoiding assert when retrying. (HBASE-20533) + conf.setInt(AssignmentManager.ASSIGN_MAX_ATTEMPTS, 3); // keep rs online so it can report the failed opens. conf.setBoolean(CoprocessorHost.ABORT_ON_ERROR_KEY, false); @@ -150,14 +152,14 @@ public class TestAssignmentManagerMetrics { LOG.info("Expected error", e); } - // Sleep 3 seconds, wait for doMetrics chore catching up + // Sleep 5 seconds, wait for doMetrics chore catching up // the rit count consists of rit and failed opens. see RegionInTransitionStat#update // Waiting for the completion of rit makes the assert stable. TEST_UTIL.waitUntilNoRegionsInTransition(); - Thread.sleep(MSG_INTERVAL * 3); + Thread.sleep(MSG_INTERVAL * 5); METRICS_HELPER.assertGauge(MetricsAssignmentManagerSource.RIT_COUNT_NAME, 1, amSource); METRICS_HELPER.assertGauge(MetricsAssignmentManagerSource.RIT_COUNT_OVER_THRESHOLD_NAME, 1, - amSource); + amSource); } } }