[
https://issues.apache.org/jira/browse/HDFS-6768?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14078515#comment-14078515
]
Arpit Agarwal commented on HDFS-6768:
-------------------------------------
The test failures are unrelated.
> TestBlockRecovery, TestRefreshCallQueue and TestGenericRefresh should use
> ephemeral ports
> -----------------------------------------------------------------------------------------
>
> Key: HDFS-6768
> URL: https://issues.apache.org/jira/browse/HDFS-6768
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: test
> Affects Versions: 2.5.0
> Reporter: Arpit Agarwal
> Assignee: Arpit Agarwal
> Attachments: HDFS-6768.01.patch
>
>
> TestBlockRecovery uses hard-coded port numbers making it susceptible to 'port
> in use' errors [as seen
> here|https://builds.apache.org/job/PreCommit-HDFS-Build/7484//testReport/org.apache.hadoop.hdfs.server.datanode/TestBlockRecovery/testRaceBetweenReplicaRecoveryAndFinalizeBlock/]
> {code}
> Error Message
> Port in use: localhost:50070
> Stacktrace
> java.net.BindException: Port in use: localhost:50070
> at sun.nio.ch.Net.bind(Native Method)
> at
> sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:124)
> at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
> at
> org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
> at
> org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:853)
> at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:794)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.start(NameNodeHttpServer.java:142)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:697)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:587)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:756)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:740)
> at
> org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1425)
> at
> org.apache.hadoop.hdfs.MiniDFSCluster.createNameNode(MiniDFSCluster.java:1007)
> at
> org.apache.hadoop.hdfs.MiniDFSCluster.createNameNodesAndSetConf(MiniDFSCluster.java:878)
> at
> org.apache.hadoop.hdfs.MiniDFSCluster.initMiniDFSCluster(MiniDFSCluster.java:707)
> at org.apache.hadoop.hdfs.MiniDFSCluster.<init>(MiniDFSCluster.java:378)
> at
> org.apache.hadoop.hdfs.MiniDFSCluster$Builder.build(MiniDFSCluster.java:359)
> at
> org.apache.hadoop.hdfs.server.datanode.TestBlockRecovery.testRaceBetweenReplicaRecoveryAndFinalizeBlock(TestBlockRecovery.java:592)
> {code}
> TestRefreshCallQueue and TestGenericRefresh also use the same hard-coded port
> number (54222) which can result in 'port in use' errors with parallel-tests.
--
This message was sent by Atlassian JIRA
(v6.2#6252)