Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id B8509200B71 for ; Wed, 27 Jul 2016 07:19:44 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id B6E6E160AA4; Wed, 27 Jul 2016 05:19:44 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 13431160AA5 for ; Wed, 27 Jul 2016 07:19:43 +0200 (CEST) Received: (qmail 5622 invoked by uid 500); 27 Jul 2016 05:19:43 -0000 Mailing-List: contact common-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list common-commits@hadoop.apache.org Received: (qmail 5603 invoked by uid 99); 27 Jul 2016 05:19:42 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 27 Jul 2016 05:19:42 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 8C78DDFE1A; Wed, 27 Jul 2016 05:19:42 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: brahma@apache.org To: common-commits@hadoop.apache.org Date: Wed, 27 Jul 2016 05:19:43 -0000 Message-Id: <521f68e3a7ef4a4ab6acca639773dfdb@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [2/2] hadoop git commit: HDFS-10668. Fix intermittently failing UT TestDataNodeMXBean#testDataNodeMXBeanBlockCount. Contributed by Mingliang Liu. archived-at: Wed, 27 Jul 2016 05:19:44 -0000 HDFS-10668. Fix intermittently failing UT TestDataNodeMXBean#testDataNodeMXBeanBlockCount. Contributed by Mingliang Liu. (cherry picked from commit 096d3fa25cbbdda4fa2ad30ea5a76f33e2631c7d) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/5dc29ab0 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/5dc29ab0 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/5dc29ab0 Branch: refs/heads/branch-2.8 Commit: 5dc29ab0f2cabaaf4aa7f32a25ae0c263842d105 Parents: 2442854 Author: Brahma Reddy Battula Authored: Wed Jul 27 10:28:31 2016 +0530 Committer: Brahma Reddy Battula Committed: Wed Jul 27 10:31:29 2016 +0530 ---------------------------------------------------------------------- .../server/datanode/TestDataNodeMXBean.java | 24 ++++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/5dc29ab0/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeMXBean.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeMXBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeMXBean.java index 24fe336..50d1904 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeMXBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeMXBean.java @@ -25,11 +25,13 @@ import java.util.Map; import javax.management.MBeanServer; import javax.management.ObjectName; +import com.google.common.base.Supplier; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hdfs.DFSTestUtil; import org.apache.hadoop.hdfs.MiniDFSCluster; +import org.apache.hadoop.test.GenericTestUtils; import org.junit.Assert; import org.junit.Test; import org.mortbay.util.ajax.JSON; @@ -100,8 +102,8 @@ public class TestDataNodeMXBean { List datanodes = cluster.getDataNodes(); assertEquals(datanodes.size(), 1); - MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); - ObjectName mxbeanName = + final MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); + final ObjectName mxbeanName = new ObjectName("Hadoop:service=DataNode,name=DataNodeInfo"); FileSystem fs = cluster.getFileSystem(); for (int i = 0; i < 5; i++) { @@ -113,10 +115,18 @@ public class TestDataNodeMXBean { cluster.waitActive(); assertEquals("After restart DN", 5, getTotalNumBlocks(mbs, mxbeanName)); fs.delete(new Path("/tmp.txt1"), true); - // Wait till replica gets deleted on disk. - Thread.sleep(5000); - assertEquals("After delete one file", 4, - getTotalNumBlocks(mbs, mxbeanName)); + // The total numBlocks should be updated after one file is deleted + GenericTestUtils.waitFor(new Supplier() { + @Override + public Boolean get() { + try { + return getTotalNumBlocks(mbs, mxbeanName) == 4; + } catch (Exception e) { + e.printStackTrace(); + return false; + } + } + }, 100, 30000); } finally { if (cluster != null) { cluster.shutdown(); @@ -125,7 +135,7 @@ public class TestDataNodeMXBean { } @SuppressWarnings("unchecked") - int getTotalNumBlocks(MBeanServer mbs, ObjectName mxbeanName) + private int getTotalNumBlocks(MBeanServer mbs, ObjectName mxbeanName) throws Exception { int totalBlocks = 0; String volumeInfo = (String) mbs.getAttribute(mxbeanName, "VolumeInfo"); --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org For additional commands, e-mail: common-commits-help@hadoop.apache.org