Repository: hbase Updated Branches: refs/heads/branch-2.0 d6ab91506 -> 307578b70
HBASE-21097 Flush pressure assertion may fail in testFlushThroughputTuning Amending-Author: Duo Zhang <zhang...@apache.org> Signed-off-by: Duo Zhang <zhang...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/307578b7 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/307578b7 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/307578b7 Branch: refs/heads/branch-2.0 Commit: 307578b7014d79e136a298f4454c09858ac41a84 Parents: d6ab915 Author: Ted Yu <yuzhih...@gmail.com> Authored: Sat Sep 15 18:19:36 2018 +0800 Committer: zhangduo <zhang...@apache.org> Committed: Sat Sep 15 18:44:23 2018 +0800 ---------------------------------------------------------------------- .../throttle/TestFlushWithThroughputController.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/307578b7/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.java index 1c39646..1f72b65 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/throttle/TestFlushWithThroughputController.java @@ -177,12 +177,18 @@ public class TestFlushWithThroughputController { .build()); hbtu.waitTableAvailable(tableName); HRegionServer regionServer = hbtu.getRSForFirstRegionInTable(tableName); + double pressure = regionServer.getFlushPressure(); + LOG.debug("Flush pressure before flushing: " + pressure); PressureAwareFlushThroughputController throughputController = (PressureAwareFlushThroughputController) regionServer.getFlushThroughputController(); for (HRegion region : regionServer.getRegions()) { region.flush(true); } - assertEquals(0.0, regionServer.getFlushPressure(), EPSILON); + // We used to assert that the flush pressure is zero but after HBASE-15787 or HBASE-18294 we + // changed to use heapSize instead of dataSize to calculate the flush pressure, and since + // heapSize will never be zero, so flush pressure will never be zero either. So we changed the + // assertion here. + assertTrue(regionServer.getFlushPressure() < pressure); Thread.sleep(5000); boolean tablesOnMaster = LoadBalancer.isTablesOnMaster(hbtu.getConfiguration()); if (tablesOnMaster) {