diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSNamesystemMBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSNamesystemMBean.java index d3114943a52..5a7da057219 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSNamesystemMBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestFSNamesystemMBean.java @@ -34,6 +34,8 @@ import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hdfs.MiniDFSCluster; +import org.apache.hadoop.metrics2.impl.ConfigBuilder; +import org.apache.hadoop.metrics2.impl.TestMetricsConfig; import org.junit.Test; import org.eclipse.jetty.util.ajax.JSON; @@ -139,12 +141,16 @@ public class TestFSNamesystemMBean { MiniDFSCluster cluster = null; FSNamesystem fsn = null; + int jmxCachePeriod = 1; + new ConfigBuilder().add("namenode.period", jmxCachePeriod) + .save(TestMetricsConfig.getTestFilename("hadoop-metrics2-namenode")); try { cluster = new MiniDFSCluster.Builder(conf).build(); cluster.waitActive(); fsn = cluster.getNameNode().namesystem; fsn.writeLock(); + Thread.sleep(jmxCachePeriod * 1000); MBeanClient client = new MBeanClient(); client.start(); @@ -167,11 +173,15 @@ public class TestFSNamesystemMBean { @Test public void testWithFSEditLogLock() throws Exception { Configuration conf = new Configuration(); + int jmxCachePeriod = 1; + new ConfigBuilder().add("namenode.period", jmxCachePeriod) + .save(TestMetricsConfig.getTestFilename("hadoop-metrics2-namenode")); MiniDFSCluster cluster = null; try { cluster = new MiniDFSCluster.Builder(conf).build(); cluster.waitActive(); synchronized (cluster.getNameNode().getFSImage().getEditLog()) { + Thread.sleep(jmxCachePeriod * 1000); MBeanClient client = new MBeanClient(); client.start(); client.join(20000);