hadoop git commit: HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki
Repository: hadoop Updated Branches: refs/heads/branch-2.7 4aea76067 -> 1e5c40b5b HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki (cherry picked from commit e9a34ae29c7390f3ffcbeee02dc5faa26fca482a) (cherry picked from commit 5f754e8638d5a35ab12765edec6561228312f71c) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/1e5c40b5 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/1e5c40b5 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/1e5c40b5 Branch: refs/heads/branch-2.7 Commit: 1e5c40b5b4b013bd63e3c0e060cb4c31e5e8ba82 Parents: 4aea760 Author: Brahma Reddy BattulaAuthored: Wed Sep 28 10:50:50 2016 +0530 Committer: Zhe Zhang Committed: Tue Oct 18 10:50:19 2016 -0700 -- .../org/apache/hadoop/net/ServerSocketUtil.java | 22 +++ hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 ++ .../server/namenode/ha/TestEditLogTailer.java | 39 +++- 3 files changed, 54 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/1e5c40b5/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java index 0ce835f..b9e2c62 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java @@ -60,4 +60,26 @@ public class ServerSocketUtil { } } + /** + * Find the specified number of unique ports available. + * The ports are all closed afterwards, + * so other network services started may grab those same ports. + * + * @param numPorts number of required port nubmers + * @return array of available port numbers + * @throws IOException + */ + public static int[] getPorts(int numPorts) throws IOException { +ServerSocket[] sockets = new ServerSocket[numPorts]; +int[] ports = new int[numPorts]; +for (int i = 0; i < numPorts; i++) { + ServerSocket sock = new ServerSocket(0); + sockets[i] = sock; + ports[i] = sock.getLocalPort(); +} +for (ServerSocket sock : sockets) { + sock.close(); +} +return ports; + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/1e5c40b5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index c9333a1..b19863b 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -169,6 +169,9 @@ Release 2.7.4 - UNRELEASED HDFS-10301. Remove FBR tracking state to fix false zombie storage detection for interleaving block reports. (Vinitha Gankidi via shv) +HDFS-9444. Add utility to find set of available ephemeral ports to +ServerSocketUtil. (Masatake Iwasaki via Brahma Reddy Battula) + Release 2.7.3 - 2016-08-25 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/1e5c40b5/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestEditLogTailer.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestEditLogTailer.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestEditLogTailer.java index 8c61c92..ea7b00a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestEditLogTailer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestEditLogTailer.java @@ -19,8 +19,11 @@ package org.apache.hadoop.hdfs.server.namenode.ha; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + import java.io.File; import java.io.IOException; +import java.net.BindException; import java.net.URI; import org.apache.commons.logging.impl.Log4JLogger; @@ -37,6 +40,7 @@ import org.apache.hadoop.hdfs.server.namenode.FSImage; import org.apache.hadoop.hdfs.server.namenode.NNStorage; import org.apache.hadoop.hdfs.server.namenode.NameNode; import org.apache.hadoop.hdfs.server.namenode.NameNodeAdapter; +import org.apache.hadoop.net.ServerSocketUtil; import org.apache.hadoop.test.GenericTestUtils; import org.apache.log4j.Level; import
[12/50] [abbrv] hadoop git commit: HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki
HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/edf0d0f8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/edf0d0f8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/edf0d0f8 Branch: refs/heads/HDFS-7240 Commit: edf0d0f8b2115d4edb5d4932b5ecb15430d94c40 Parents: 059058f Author: Brahma Reddy BattulaAuthored: Tue Sep 27 07:04:37 2016 +0530 Committer: Brahma Reddy Battula Committed: Tue Sep 27 07:04:37 2016 +0530 -- .../org/apache/hadoop/net/ServerSocketUtil.java | 23 +++ .../server/namenode/TestNameNodeMXBean.java | 34 +++- .../server/namenode/ha/TestEditLogTailer.java | 42 +--- 3 files changed, 75 insertions(+), 24 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/edf0d0f8/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java index 023c1ed..a294e74 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java @@ -102,4 +102,27 @@ public class ServerSocketUtil { } } } + + /** + * Find the specified number of unique ports available. + * The ports are all closed afterwards, + * so other network services started may grab those same ports. + * + * @param numPorts number of required port nubmers + * @return array of available port numbers + * @throws IOException + */ + public static int[] getPorts(int numPorts) throws IOException { +ServerSocket[] sockets = new ServerSocket[numPorts]; +int[] ports = new int[numPorts]; +for (int i = 0; i < numPorts; i++) { + ServerSocket sock = new ServerSocket(0); + sockets[i] = sock; + ports[i] = sock.getLocalPort(); +} +for (ServerSocket sock : sockets) { + sock.close(); +} +return ports; + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/edf0d0f8/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java index dc8bea7..ac97a36 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java @@ -47,6 +47,7 @@ import javax.management.MBeanServer; import javax.management.ObjectName; import java.io.File; import java.lang.management.ManagementFactory; +import java.net.BindException; import java.net.URI; import java.util.ArrayList; import java.util.Collection; @@ -59,6 +60,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; /** * Class for testing {@link NameNodeMXBean} implementation @@ -431,17 +433,29 @@ public class TestNameNodeMXBean { public void testNNDirectorySize() throws Exception{ Configuration conf = new Configuration(); conf.setInt(DFSConfigKeys.DFS_HA_TAILEDITS_PERIOD_KEY, 1); -// Have to specify IPC ports so the NNs can talk to each other. -MiniDFSNNTopology topology = new MiniDFSNNTopology() -.addNameservice(new MiniDFSNNTopology.NSConf("ns1") -.addNN(new MiniDFSNNTopology.NNConf("nn1") -.setIpcPort(ServerSocketUtil.getPort(0, 100))) -.addNN(new MiniDFSNNTopology.NNConf("nn2") -.setIpcPort(ServerSocketUtil.getPort(0, 100; +MiniDFSCluster cluster = null; +for (int i = 0; i < 5; i++) { + try{ +// Have to specify IPC ports so the NNs can talk to each other. +int[] ports = ServerSocketUtil.getPorts(2); +MiniDFSNNTopology topology = new MiniDFSNNTopology() +.addNameservice(new MiniDFSNNTopology.NSConf("ns1") +.addNN(new MiniDFSNNTopology.NNConf("nn1").setIpcPort(ports[0])) +.addNN( +new
[1/2] hadoop git commit: HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki
Repository: hadoop Updated Branches: refs/heads/branch-2 54ca505c4 -> e9a34ae29 refs/heads/branch-2.8 6da9a3c60 -> 5f754e863 HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e9a34ae2 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e9a34ae2 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e9a34ae2 Branch: refs/heads/branch-2 Commit: e9a34ae29c7390f3ffcbeee02dc5faa26fca482a Parents: 54ca505 Author: Brahma Reddy BattulaAuthored: Wed Sep 28 10:50:50 2016 +0530 Committer: Brahma Reddy Battula Committed: Wed Sep 28 10:50:50 2016 +0530 -- .../org/apache/hadoop/net/ServerSocketUtil.java | 23 .../server/namenode/TestNameNodeMXBean.java | 34 - .../server/namenode/ha/TestEditLogTailer.java | 39 ++-- 3 files changed, 74 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/e9a34ae2/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java index 023c1ed..a294e74 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java @@ -102,4 +102,27 @@ public class ServerSocketUtil { } } } + + /** + * Find the specified number of unique ports available. + * The ports are all closed afterwards, + * so other network services started may grab those same ports. + * + * @param numPorts number of required port nubmers + * @return array of available port numbers + * @throws IOException + */ + public static int[] getPorts(int numPorts) throws IOException { +ServerSocket[] sockets = new ServerSocket[numPorts]; +int[] ports = new int[numPorts]; +for (int i = 0; i < numPorts; i++) { + ServerSocket sock = new ServerSocket(0); + sockets[i] = sock; + ports[i] = sock.getLocalPort(); +} +for (ServerSocket sock : sockets) { + sock.close(); +} +return ports; + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/e9a34ae2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java index c9b0aa1..25250c5 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java @@ -47,6 +47,7 @@ import javax.management.MBeanServer; import javax.management.ObjectName; import java.io.File; import java.lang.management.ManagementFactory; +import java.net.BindException; import java.net.URI; import java.util.ArrayList; import java.util.Collection; @@ -59,6 +60,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; /** * Class for testing {@link NameNodeMXBean} implementation @@ -431,17 +433,29 @@ public class TestNameNodeMXBean { public void testNNDirectorySize() throws Exception{ Configuration conf = new Configuration(); conf.setInt(DFSConfigKeys.DFS_HA_TAILEDITS_PERIOD_KEY, 1); -// Have to specify IPC ports so the NNs can talk to each other. -MiniDFSNNTopology topology = new MiniDFSNNTopology() -.addNameservice(new MiniDFSNNTopology.NSConf("ns1") -.addNN(new MiniDFSNNTopology.NNConf("nn1") -.setIpcPort(ServerSocketUtil.getPort(0, 100))) -.addNN(new MiniDFSNNTopology.NNConf("nn2") -.setIpcPort(ServerSocketUtil.getPort(0, 100; +MiniDFSCluster cluster = null; +for (int i = 0; i < 5; i++) { + try{ +// Have to specify IPC ports so the NNs can talk to each other. +int[] ports = ServerSocketUtil.getPorts(2); +MiniDFSNNTopology topology = new MiniDFSNNTopology() +.addNameservice(new MiniDFSNNTopology.NSConf("ns1") +
[2/2] hadoop git commit: HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki
HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki (cherry picked from commit e9a34ae29c7390f3ffcbeee02dc5faa26fca482a) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/5f754e86 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/5f754e86 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/5f754e86 Branch: refs/heads/branch-2.8 Commit: 5f754e8638d5a35ab12765edec6561228312f71c Parents: 6da9a3c Author: Brahma Reddy BattulaAuthored: Wed Sep 28 10:50:50 2016 +0530 Committer: Brahma Reddy Battula Committed: Wed Sep 28 11:16:40 2016 +0530 -- .../org/apache/hadoop/net/ServerSocketUtil.java | 23 +++ .../server/namenode/TestNameNodeMXBean.java | 34 - .../server/namenode/ha/TestEditLogTailer.java | 40 ++-- 3 files changed, 75 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/5f754e86/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java index 023c1ed..a294e74 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java @@ -102,4 +102,27 @@ public class ServerSocketUtil { } } } + + /** + * Find the specified number of unique ports available. + * The ports are all closed afterwards, + * so other network services started may grab those same ports. + * + * @param numPorts number of required port nubmers + * @return array of available port numbers + * @throws IOException + */ + public static int[] getPorts(int numPorts) throws IOException { +ServerSocket[] sockets = new ServerSocket[numPorts]; +int[] ports = new int[numPorts]; +for (int i = 0; i < numPorts; i++) { + ServerSocket sock = new ServerSocket(0); + sockets[i] = sock; + ports[i] = sock.getLocalPort(); +} +for (ServerSocket sock : sockets) { + sock.close(); +} +return ports; + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/5f754e86/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java index dfaf929..e622576 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java @@ -46,6 +46,7 @@ import javax.management.ObjectName; import java.io.File; import java.io.IOException; import java.lang.management.ManagementFactory; +import java.net.BindException; import java.net.URI; import java.util.Collection; import java.util.List; @@ -56,6 +57,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; /** * Class for testing {@link NameNodeMXBean} implementation @@ -422,17 +424,29 @@ public class TestNameNodeMXBean { public void testNNDirectorySize() throws Exception{ Configuration conf = new Configuration(); conf.setInt(DFSConfigKeys.DFS_HA_TAILEDITS_PERIOD_KEY, 1); -// Have to specify IPC ports so the NNs can talk to each other. -MiniDFSNNTopology topology = new MiniDFSNNTopology() -.addNameservice(new MiniDFSNNTopology.NSConf("ns1") -.addNN(new MiniDFSNNTopology.NNConf("nn1") -.setIpcPort(ServerSocketUtil.getPort(0, 100))) -.addNN(new MiniDFSNNTopology.NNConf("nn2") -.setIpcPort(ServerSocketUtil.getPort(0, 100; +MiniDFSCluster cluster = null; +for (int i = 0; i < 5; i++) { + try{ +// Have to specify IPC ports so the NNs can talk to each other. +int[] ports = ServerSocketUtil.getPorts(2); +MiniDFSNNTopology topology = new MiniDFSNNTopology() +.addNameservice(new MiniDFSNNTopology.NSConf("ns1") +.addNN(new MiniDFSNNTopology.NNConf("nn1").setIpcPort(ports[0])) +
hadoop git commit: HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki
Repository: hadoop Updated Branches: refs/heads/trunk 059058f96 -> edf0d0f8b HDFS-9444. Add utility to find set of available ephemeral ports to ServerSocketUtil. Contributed by Masatake Iwasaki Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/edf0d0f8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/edf0d0f8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/edf0d0f8 Branch: refs/heads/trunk Commit: edf0d0f8b2115d4edb5d4932b5ecb15430d94c40 Parents: 059058f Author: Brahma Reddy BattulaAuthored: Tue Sep 27 07:04:37 2016 +0530 Committer: Brahma Reddy Battula Committed: Tue Sep 27 07:04:37 2016 +0530 -- .../org/apache/hadoop/net/ServerSocketUtil.java | 23 +++ .../server/namenode/TestNameNodeMXBean.java | 34 +++- .../server/namenode/ha/TestEditLogTailer.java | 42 +--- 3 files changed, 75 insertions(+), 24 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/edf0d0f8/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java -- diff --git a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java index 023c1ed..a294e74 100644 --- a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java +++ b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/ServerSocketUtil.java @@ -102,4 +102,27 @@ public class ServerSocketUtil { } } } + + /** + * Find the specified number of unique ports available. + * The ports are all closed afterwards, + * so other network services started may grab those same ports. + * + * @param numPorts number of required port nubmers + * @return array of available port numbers + * @throws IOException + */ + public static int[] getPorts(int numPorts) throws IOException { +ServerSocket[] sockets = new ServerSocket[numPorts]; +int[] ports = new int[numPorts]; +for (int i = 0; i < numPorts; i++) { + ServerSocket sock = new ServerSocket(0); + sockets[i] = sock; + ports[i] = sock.getLocalPort(); +} +for (ServerSocket sock : sockets) { + sock.close(); +} +return ports; + } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/edf0d0f8/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java -- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java index dc8bea7..ac97a36 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeMXBean.java @@ -47,6 +47,7 @@ import javax.management.MBeanServer; import javax.management.ObjectName; import java.io.File; import java.lang.management.ManagementFactory; +import java.net.BindException; import java.net.URI; import java.util.ArrayList; import java.util.Collection; @@ -59,6 +60,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; /** * Class for testing {@link NameNodeMXBean} implementation @@ -431,17 +433,29 @@ public class TestNameNodeMXBean { public void testNNDirectorySize() throws Exception{ Configuration conf = new Configuration(); conf.setInt(DFSConfigKeys.DFS_HA_TAILEDITS_PERIOD_KEY, 1); -// Have to specify IPC ports so the NNs can talk to each other. -MiniDFSNNTopology topology = new MiniDFSNNTopology() -.addNameservice(new MiniDFSNNTopology.NSConf("ns1") -.addNN(new MiniDFSNNTopology.NNConf("nn1") -.setIpcPort(ServerSocketUtil.getPort(0, 100))) -.addNN(new MiniDFSNNTopology.NNConf("nn2") -.setIpcPort(ServerSocketUtil.getPort(0, 100; +MiniDFSCluster cluster = null; +for (int i = 0; i < 5; i++) { + try{ +// Have to specify IPC ports so the NNs can talk to each other. +int[] ports = ServerSocketUtil.getPorts(2); +MiniDFSNNTopology topology = new MiniDFSNNTopology() +.addNameservice(new MiniDFSNNTopology.NSConf("ns1") +.addNN(new