Xiaoyu Yao created HDFS-7914:
--------------------------------

             Summary: TestJournalNode#testFailToStartWithBadConfig failed 
consistently when the default dfs.journalnode.http-address port 8480 is in use 
by OS.
                 Key: HDFS-7914
                 URL: https://issues.apache.org/jira/browse/HDFS-7914
             Project: Hadoop HDFS
          Issue Type: Test
    Affects Versions: 2.6.0
         Environment: Mac
            Reporter: Xiaoyu Yao
            Assignee: Xiaoyu Yao


The default journal node http port address 8480 used by the test is always 
conflicting with iTunes service on Mac OS as shown below. The fix for this test 
to let OS choose a free port for the test. I will post a patch shortly.

Tests run: 6, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 3.392 sec <<< 
FAILURE! - in org.apache.hadoop.hdfs.qjournal.server.TestJournalNode
testFailToStartWithBadConfig(org.apache.hadoop.hdfs.qjournal.server.TestJournalNode)
  Time elapsed: 0.176 sec  <<< FAILURE!
java.lang.AssertionError: Expected to find 'Cannot create directory' but got 
unexpected exception:java.net.BindException: Port in use: 0.0.0.0:8480
        at 
org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:812)
        at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:749)
        at 
org.apache.hadoop.hdfs.qjournal.server.JournalNodeHttpServer.start(JournalNodeHttpServer.java:69)
        at 
org.apache.hadoop.hdfs.qjournal.server.JournalNode.start(JournalNode.java:150)
        at 
org.apache.hadoop.hdfs.qjournal.server.TestJournalNode.assertJNFailsToStart(TestJournalNode.java:297)
        at 
org.apache.hadoop.hdfs.qjournal.server.TestJournalNode.testFailToStartWithBadConfig(TestJournalNode.java:289)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at 
org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Net.java:444)
        at sun.nio.ch.Net.bind(Net.java:436)
        at 
sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
        at 
org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
        at 
org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:807)
        ... 14 more

        at org.junit.Assert.fail(Assert.java:88)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at 
org.apache.hadoop.test.GenericTestUtils.assertExceptionContains(GenericTestUtils.java:146)
        at 
org.apache.hadoop.hdfs.qjournal.server.TestJournalNode.assertJNFailsToStart(TestJournalNode.java:299)
        at 
org.apache.hadoop.hdfs.qjournal.server.TestJournalNode.testFailToStartWithBadConfig(TestJournalNode.java:289)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to