HBASE-18354 Fix TestMasterMetrics that were disabled by Proc-V2 AM in HBASE-14614 (Vladimir Rodionov)

This commit is contained in:
Stephen Yuan Jiang 2017-07-24 14:52:04 -07:00
parent 8f006582e3
commit fabab8c23f
1 changed files with 12 additions and 13 deletions

View File

@ -36,7 +36,6 @@ import org.apache.hadoop.hbase.testclassification.MediumTests;
import org.apache.zookeeper.KeeperException; import org.apache.zookeeper.KeeperException;
import org.junit.AfterClass; import org.junit.AfterClass;
import org.junit.BeforeClass; import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
import org.junit.experimental.categories.Category; import org.junit.experimental.categories.Category;
@ -83,44 +82,44 @@ public class TestMasterMetrics {
} }
} }
@Ignore @Test(timeout = 300000) @Test(timeout = 300000)
public void testClusterRequests() throws Exception { public void testClusterRequests() throws Exception {
// sending fake request to master to see how metric value has changed // sending fake request to master to see how metric value has changed
RegionServerStatusProtos.RegionServerReportRequest.Builder request = RegionServerStatusProtos.RegionServerReportRequest.Builder request =
RegionServerStatusProtos.RegionServerReportRequest.newBuilder(); RegionServerStatusProtos.RegionServerReportRequest.newBuilder();
ServerName serverName = cluster.getMaster(0).getServerName(); ServerName serverName = cluster.getMaster(0).getServerName();
request.setServer(ProtobufUtil.toServerName(serverName)); request.setServer(ProtobufUtil.toServerName(serverName));
long expectedRequestNumber = 10000;
MetricsMasterSource masterSource = master.getMasterMetrics().getMetricsSource(); MetricsMasterSource masterSource = master.getMasterMetrics().getMetricsSource();
ClusterStatusProtos.ServerLoad sl = ClusterStatusProtos.ServerLoad.newBuilder() ClusterStatusProtos.ServerLoad sl = ClusterStatusProtos.ServerLoad.newBuilder()
.setTotalNumberOfRequests(10000) .setTotalNumberOfRequests(expectedRequestNumber)
.build(); .build();
masterSource.init();
request.setLoad(sl); request.setLoad(sl);
master.getMasterRpcServices().regionServerReport(null, request.build());
metricsHelper.assertCounter("cluster_requests", 10000, masterSource); master.getMasterRpcServices().regionServerReport(null, request.build());
metricsHelper.assertCounter("cluster_requests", expectedRequestNumber, masterSource);
expectedRequestNumber = 15000;
sl = ClusterStatusProtos.ServerLoad.newBuilder() sl = ClusterStatusProtos.ServerLoad.newBuilder()
.setTotalNumberOfRequests(15000) .setTotalNumberOfRequests(expectedRequestNumber)
.build(); .build();
request.setLoad(sl); request.setLoad(sl);
master.getMasterRpcServices().regionServerReport(null, request.build());
metricsHelper.assertCounter("cluster_requests", 15000, masterSource);
master.getMasterRpcServices().regionServerReport(null, request.build()); master.getMasterRpcServices().regionServerReport(null, request.build());
metricsHelper.assertCounter("cluster_requests", expectedRequestNumber, masterSource);
metricsHelper.assertCounter("cluster_requests", 15000, masterSource);
master.stopMaster(); master.stopMaster();
} }
@Ignore @Test @Test
public void testDefaultMasterMetrics() throws Exception { public void testDefaultMasterMetrics() throws Exception {
MetricsMasterSource masterSource = master.getMasterMetrics().getMetricsSource(); MetricsMasterSource masterSource = master.getMasterMetrics().getMetricsSource();
metricsHelper.assertGauge( "numRegionServers", 2, masterSource); metricsHelper.assertGauge( "numRegionServers", 2, masterSource);
metricsHelper.assertGauge( "averageLoad", 2, masterSource); metricsHelper.assertGauge( "averageLoad", 1, masterSource);
metricsHelper.assertGauge( "numDeadRegionServers", 0, masterSource); metricsHelper.assertGauge( "numDeadRegionServers", 0, masterSource);
metricsHelper.assertGauge("masterStartTime", master.getMasterStartTime(), masterSource); metricsHelper.assertGauge("masterStartTime", master.getMasterStartTime(), masterSource);