[ https://issues.apache.org/jira/browse/GEODE-9491?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17396850#comment-17396850 ]
ASF subversion and git services commented on GEODE-9491: -------------------------------------------------------- Commit b0a478353f5f131d2f45cb6c75c88c2fe162e2c5 in geode's branch refs/heads/develop from Dale Emery [ https://gitbox.apache.org/repos/asf?p=geode.git;h=b0a4783 ] GEODE-9491: Fix REST API test use of ephemeral ports (#6751) PROBLEM A `RestAPICompatibilityTest` backward compatibility test assumed that two ephemeral ports would remain available while not in use. The test: 1. Launched two locators, each on an ephemeral port. 2. Stopped each locator. 3. Restarted each locator on its original (ephemeral) port. In between steps 2 and 3, some other process can bind to the port, causing the restart to fail. SOLUTION Change the test to assign a non-ephemeral port to each locator. > CI Failure: RestAPICompatibilityTest > > restCommandExecutedOnLatestLocatorShouldBeBackwardsCompatible[1.12.3] > ------------------------------------------------------------------------------------------------------------ > > Key: GEODE-9491 > URL: https://issues.apache.org/jira/browse/GEODE-9491 > Project: Geode > Issue Type: Test > Components: tests > Reporter: Jens Deppe > Assignee: Dale Emery > Priority: Major > Labels: GeodeOperationAPI, pull-request-available > > https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/upgrade-test-openjdk11/builds/106 > {noformat} > RestAPICompatibilityTest > > restCommandExecutedOnLatestLocatorShouldBeBackwardsCompatible[1.12.3] FAILED > org.apache.geode.test.dunit.RMIException: While invoking > org.apache.geode.test.dunit.internal.IdentifiableCallable.call in VM 0 > running on Host > heavy-lifter-44b13792-c082-5b9d-ace9-2ea1cd66e751.c.apachegeode-ci.internal > with 4 VMs > at org.apache.geode.test.dunit.VM.executeMethodOnObject(VM.java:631) > at org.apache.geode.test.dunit.VM.invoke(VM.java:461) > at > org.apache.geode.test.dunit.rules.ClusterStartupRule.startLocatorVM(ClusterStartupRule.java:227) > at > org.apache.geode.test.dunit.rules.ClusterStartupRule.startLocatorVM(ClusterStartupRule.java:219) > at > org.apache.geode.rest.internal.web.controllers.RestAPICompatibilityTest.restCommandExecutedOnLatestLocatorShouldBeBackwardsCompatible(RestAPICompatibilityTest.java:120) > Caused by: > java.io.UncheckedIOException: java.net.BindException: Failed to > create server socket on 10.0.0.91[33337] > at > org.apache.geode.test.junit.rules.LocatorStarterRule.startLocator(LocatorStarterRule.java:95) > at > org.apache.geode.test.junit.rules.LocatorStarterRule.before(LocatorStarterRule.java:74) > at > org.apache.geode.test.dunit.rules.ClusterStartupRule.lambda$startLocatorVM$a061f02f$1(ClusterStartupRule.java:238) > at > org.apache.geode.test.dunit.internal.IdentifiableCallable.call(IdentifiableCallable.java:41) > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:566) > at > org.apache.geode.test.dunit.internal.MethodInvoker.executeObject(MethodInvoker.java:123) > at > org.apache.geode.test.dunit.internal.RemoteDUnitVM.executeMethodOnObject(RemoteDUnitVM.java:78) > at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > at > jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:566) > at > sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) > at sun.rmi.transport.Transport$1.run(Transport.java:200) > at sun.rmi.transport.Transport$1.run(Transport.java:197) > at java.security.AccessController.doPrivileged(Native Method) > at sun.rmi.transport.Transport.serviceCall(Transport.java:196) > at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677) > at java.security.AccessController.doPrivileged(Native Method) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) > at java.lang.Thread.run(Thread.java:829) > Caused by: > java.net.BindException: Failed to create server socket on > 10.0.0.91[33337] > at > org.apache.geode.distributed.internal.tcpserver.ClusterSocketCreatorImpl.createServerSocket(ClusterSocketCreatorImpl.java:75) > at > org.apache.geode.internal.net.SCClusterSocketCreator.createServerSocket(SCClusterSocketCreator.java:55) > at > org.apache.geode.distributed.internal.tcpserver.ClusterSocketCreatorImpl.createServerSocket(ClusterSocketCreatorImpl.java:48) > at > org.apache.geode.distributed.internal.tcpserver.TcpServer.initializeServerSocket(TcpServer.java:193) > at > org.apache.geode.distributed.internal.tcpserver.TcpServer.startServerThread(TcpServer.java:183) > at > org.apache.geode.distributed.internal.tcpserver.TcpServer.start(TcpServer.java:178) > at > org.apache.geode.distributed.internal.membership.gms.locator.MembershipLocatorImpl.start(MembershipLocatorImpl.java:112) > at > org.apache.geode.distributed.internal.InternalLocator.startPeerLocation(InternalLocator.java:653) > at > org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:394) > at > org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:345) > at > org.apache.geode.distributed.Locator.startLocator(Locator.java:261) > at > org.apache.geode.distributed.Locator.startLocatorAndDS(Locator.java:143) > at > org.apache.geode.test.junit.rules.LocatorStarterRule.startLocator(LocatorStarterRule.java:93) > ... 26 more > Caused by: > java.net.BindException: Address already in use (Bind failed) > at java.net.PlainSocketImpl.socketBind(Native Method) > at > java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:436) > at java.net.ServerSocket.bind(ServerSocket.java:395) > at > org.apache.geode.distributed.internal.tcpserver.ClusterSocketCreatorImpl.createServerSocket(ClusterSocketCreatorImpl.java:72) > ... 38 more > {noformat} > {noformat} > =-=-=-=-=-=-=-=-=-=-=-=-=-=-= Test Results URI > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > http://files.apachegeode-ci.info/builds/apache-develop-main/1.15.0-build.0394/test-results/upgradeTest/1628210227/ > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > Test report artifacts from this job are available at: > http://files.apachegeode-ci.info/builds/apache-develop-main/1.15.0-build.0394/test-artifacts/1628210227/upgradetestfiles-openjdk11-1.15.0-build.0394.tgz > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005)