Dan Smith created GEODE-1600:
--------------------------------
Summary: DUnitLauncher should not use AvailablePort to pick the
locator port
Key: GEODE-1600
URL: https://issues.apache.org/jira/browse/GEODE-1600
Project: Geode
Issue Type: Bug
Components: tests
Reporter: Dan Smith
In a recent dunit precheckin run, I saw a number of tests fail with the below
errors
{noformat}
11:38:15 com.gemstone.gemfire.disttx.DistTXDebugDUnitTest > classMethod FAILED
11:38:15 java.lang.RuntimeException: Unable to launch dunit VMS
11:38:15
11:38:15 Caused by:
11:38:15 java.lang.RuntimeException: Failed to start locator
11:38:15
11:38:15 Caused by:
11:38:15 java.net.BindException: Failed to create server socket on
null[29,649]
11:38:15
11:38:15 Caused by:
11:38:15 java.net.BindException: Address already in use
11:38:17
11:38:17 com.gemstone.gemfire.disttx.DistTXRestrictionsDUnitTest >
testPersistentRestriction FAILED
11:38:17 com.gemstone.gemfire.GemFireConfigException: Unable to join the
distributed system. Operation either timed out, was stopped or Locator does
not exist.
11:38:18
11:38:18 com.gemstone.gemfire.disttx.PRDistTXDUnitTest >
testColocationPartitionedRegion FAILED
11:38:18 com.gemstone.gemfire.test.dunit.RMIException: While invoking
com.gemstone.gemfire.internal.cache.execute.PRTransactionDUnitTest$12.call in
VM 0 running on Host zambia.gemstone.com with 4 VMs
11:38:18
11:38:18 Caused by:
11:38:18 com.gemstone.gemfire.GemFireConfigException: Unable to join
the distributed system. Operation either timed out, was stopped or Locator
does not exist.
{noformat}
It looks like the issue is that the locator failed to start because the port it
was starting on was already used.
We should refactor the launcher code to call Locator.startLocatorAndDS with a
port of 0 and let it pick an open port. That way we should no longer have a
chance of port conflicts when launching dunit.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)