HBASE-27032 The draining region servers metric description is incorrect (#4428)

Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
Signed-off-by: Pankaj Kumar<pankajkumar@apache.org>
(cherry picked from commit ed1665355a)
This commit is contained in:
litao 2022-05-17 13:05:35 +08:00 committed by Pankaj
parent 2efaa7d221
commit 31f4b422ab
2 changed files with 10 additions and 2 deletions

View File

@ -98,7 +98,8 @@ public class MetricsMasterSourceImpl extends BaseSourceImpl implements MetricsMa
masterWrapper.getNumDeadRegionServers()) masterWrapper.getNumDeadRegionServers())
.tag(Interns.info(DRAINING_REGION_SERVER_NAME, DRAINING_REGION_SERVER_DESC), .tag(Interns.info(DRAINING_REGION_SERVER_NAME, DRAINING_REGION_SERVER_DESC),
masterWrapper.getDrainingRegionServers()) masterWrapper.getDrainingRegionServers())
.addGauge(Interns.info(NUM_DRAINING_REGION_SERVERS_NAME, NUMBER_OF_REGION_SERVERS_DESC), .addGauge(
Interns.info(NUM_DRAINING_REGION_SERVERS_NAME, NUMBER_OF_DRAINING_REGION_SERVERS_DESC),
masterWrapper.getNumDrainingRegionServers()) masterWrapper.getNumDrainingRegionServers())
.tag(Interns.info(ZOOKEEPER_QUORUM_NAME, ZOOKEEPER_QUORUM_DESC), .tag(Interns.info(ZOOKEEPER_QUORUM_NAME, ZOOKEEPER_QUORUM_DESC),
masterWrapper.getZookeeperQuorum()) masterWrapper.getZookeeperQuorum())

View File

@ -19,6 +19,7 @@ package org.apache.hadoop.hbase.master;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import java.io.IOException;
import java.util.AbstractMap.SimpleImmutableEntry; import java.util.AbstractMap.SimpleImmutableEntry;
import org.apache.hadoop.hbase.HBaseClassTestRule; import org.apache.hadoop.hbase.HBaseClassTestRule;
import org.apache.hadoop.hbase.HBaseTestingUtility; import org.apache.hadoop.hbase.HBaseTestingUtility;
@ -59,7 +60,7 @@ public class TestMasterMetricsWrapper {
} }
@Test @Test
public void testInfo() { public void testInfo() throws IOException {
HMaster master = TEST_UTIL.getHBaseCluster().getMaster(); HMaster master = TEST_UTIL.getHBaseCluster().getMaster();
MetricsMasterWrapperImpl info = new MetricsMasterWrapperImpl(master); MetricsMasterWrapperImpl info = new MetricsMasterWrapperImpl(master);
assertEquals(master.getRegionNormalizerManager().getSplitPlanCount(), info.getSplitPlanCount(), assertEquals(master.getRegionNormalizerManager().getSplitPlanCount(), info.getSplitPlanCount(),
@ -97,6 +98,12 @@ public class TestMasterMetricsWrapper {
// now we do not expose this information as WALProcedureStore is not the only ProcedureStore // now we do not expose this information as WALProcedureStore is not the only ProcedureStore
// implementation any more. // implementation any more.
assertEquals(0, info.getNumWALFiles()); assertEquals(0, info.getNumWALFiles());
// We decommission the first online region server and verify the metrics.
TEST_UTIL.getMiniHBaseCluster().getMaster().decommissionRegionServers(
master.getServerManager().getOnlineServersList().subList(0, 1), false);
assertEquals(1, info.getNumDrainingRegionServers());
assertEquals(master.getServerManager().getOnlineServersList().get(0).toString(),
info.getDrainingRegionServers());
} }
@Test @Test