HBASE-20044 TestClientClusterStatus is flakey" Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey"" This is a revert of a revert, i.e. a reapplication, just so I can fix the JIRA number.
This reverts commit 6796b8e21faf79e6a738be62f1c7e805e1e88ae3. Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/1db14745 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/1db14745 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/1db14745 Branch: refs/heads/branch-2 Commit: 1db1474591f138b9e265ed2edd985344f32151f8 Parents: 6796b8e Author: Michael Stack <st...@apache.org> Authored: Thu Feb 22 09:42:37 2018 -0800 Committer: Michael Stack <st...@apache.org> Committed: Thu Feb 22 09:42:37 2018 -0800 ---------------------------------------------------------------------- .../hadoop/hbase/TestClientClusterStatus.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/1db14745/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java index bfdae8a..392ff6e 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java @@ -37,6 +37,7 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer; import org.apache.hadoop.hbase.testclassification.MediumTests; import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread; import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread; +import org.apache.hadoop.hbase.util.Threads; import org.junit.AfterClass; import org.junit.Assert; import org.junit.BeforeClass; @@ -100,13 +101,14 @@ public class TestClientClusterStatus { @Test public void testNone() throws Exception { - ClusterStatus status0 - = new ClusterStatus(ADMIN.getClusterMetrics(EnumSet.allOf(Option.class))); - ClusterStatus status1 - = new ClusterStatus(ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class))); - Assert.assertEquals(status0, status1); - checkPbObjectNotNull(status0); - checkPbObjectNotNull(status1); + ClusterMetrics status0 = ADMIN.getClusterMetrics(EnumSet.allOf(Option.class)); + ClusterMetrics status1 = ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class)); + // Do a rough compare. More specific compares can fail because all regions not deployed yet + // or more requests than expected. + Assert.assertEquals(status0.getLiveServerMetrics().size(), + status1.getLiveServerMetrics().size()); + checkPbObjectNotNull(new ClusterStatus(status0)); + checkPbObjectNotNull(new ClusterStatus(status1)); } @Test