[ https://issues.apache.org/jira/browse/GEODE-8494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522579#comment-17522579 ]
Dale Emery commented on GEODE-8494: ----------------------------------- This failure is due to the use of `SocketUtils.findAvailableTcpPort()` to get an available port. That method can return a port in the ephemeral port range. When it does, the port may be unavailable by the time the embedded tomcat server binds to it. The SocketUtils class is deprecated because it is unreliable. The fix is easy: Use AvailablePortHelper instead, which returns ports in a safer, non-ephemeral port range. > CI Failure: Tomcat7SessionsTest.setupClass fails due to > java.net.BindException: Address already in use > ------------------------------------------------------------------------------------------------------ > > Key: GEODE-8494 > URL: https://issues.apache.org/jira/browse/GEODE-8494 > Project: Geode > Issue Type: Bug > Affects Versions: 1.12.3, 1.13.3, 1.14.0 > Reporter: Donal Evans > Priority: Major > > This is possibly just an unlucky port collision due to multiple tests being > run at the same time. > {noformat} > org.apache.geode.modules.session.Tomcat7SessionsTest > classMethod FAILED > org.apache.catalina.LifecycleException: service.getName(): "null"; > Protocol handler start failed > at > org.apache.catalina.connector.Connector.startInternal(Connector.java:986) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) > at > org.apache.catalina.startup.Embedded.startInternal(Embedded.java:781) > at > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) > at > org.apache.geode.modules.session.EmbeddedTomcat.startContainer(EmbeddedTomcat.java:98) > at > org.apache.geode.modules.session.AbstractSessionsTest.setupServer(AbstractSessionsTest.java:71) > at > org.apache.geode.modules.session.Tomcat7SessionsTest.setupClass(Tomcat7SessionsTest.java:36) > Caused by: > java.net.BindException: Address already in use: NET_Bind <null>:49811 > at > org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:414) > at > org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:767) > at > org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:482) > at > org.apache.catalina.connector.Connector.startInternal(Connector.java:979) > ... 6 more > Caused by: > java.net.BindException: Address already in use: NET_Bind > at java.net.PlainSocketImpl.bind0(Native Method) > at > java.net.PlainSocketImpl.socketBind(PlainSocketImpl.java:132) > at > java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:436) > at java.net.ServerSocket.bind(ServerSocket.java:395) > at java.net.ServerSocket.<init>(ServerSocket.java:257) > at java.net.ServerSocket.<init>(ServerSocket.java:201) > at > org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49) > at > org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:401) > ... 9 more > {noformat} > > =-=-=-=-=-=-=-=-=-=-=-=-=-=-= Test Results URI > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > > [http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0330/test-results/integrationTest/1600111592/] > > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > Test report artifacts from this job are available at: > [http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0330/test-artifacts/1600111592/windows-integrationtestfiles-OpenJDK11-1.14.0-build.0330.tgz] -- This message was sent by Atlassian Jira (v8.20.1#820001)