Merge pull request #12271 from jaymode/test_zen_port_range
restrict the test unicast zen discovery to the port range of the JVM
This commit is contained in:
commit
5091a10f3a
|
@ -164,8 +164,13 @@ public final class InternalTestCluster extends TestCluster {
|
||||||
*/
|
*/
|
||||||
public static final String SETTING_CLUSTER_NODE_SEED = "test.cluster.node.seed";
|
public static final String SETTING_CLUSTER_NODE_SEED = "test.cluster.node.seed";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The number of ports in the range used for this JVM
|
||||||
|
*/
|
||||||
|
public static final int PORTS_PER_JVM = 100;
|
||||||
|
|
||||||
private static final int JVM_ORDINAL = Integer.parseInt(System.getProperty(SysGlobals.CHILDVM_SYSPROP_JVM_ID, "0"));
|
private static final int JVM_ORDINAL = Integer.parseInt(System.getProperty(SysGlobals.CHILDVM_SYSPROP_JVM_ID, "0"));
|
||||||
public static final int BASE_PORT = 9300 + 100 * (JVM_ORDINAL + 1);
|
public static final int BASE_PORT = 9300 + PORTS_PER_JVM * (JVM_ORDINAL + 1);
|
||||||
|
|
||||||
private static final boolean ENABLE_MOCK_MODULES = RandomizedTest.systemPropertyAsBoolean(TESTS_ENABLE_MOCK_MODULES, true);
|
private static final boolean ENABLE_MOCK_MODULES = RandomizedTest.systemPropertyAsBoolean(TESTS_ENABLE_MOCK_MODULES, true);
|
||||||
|
|
||||||
|
|
|
@ -142,11 +142,11 @@ public class ClusterDiscoveryConfiguration extends SettingsSource {
|
||||||
int[] unicastHostPorts = new int[numHosts];
|
int[] unicastHostPorts = new int[numHosts];
|
||||||
|
|
||||||
final int basePort = calcBasePort();
|
final int basePort = calcBasePort();
|
||||||
final int maxPort = basePort + 1000;
|
final int maxPort = basePort + InternalTestCluster.PORTS_PER_JVM;
|
||||||
int tries = 0;
|
int tries = 0;
|
||||||
for (int i = 0; i < unicastHostPorts.length; i++) {
|
for (int i = 0; i < unicastHostPorts.length; i++) {
|
||||||
boolean foundPortInRange = false;
|
boolean foundPortInRange = false;
|
||||||
while (tries < 1000 && !foundPortInRange) {
|
while (tries < InternalTestCluster.PORTS_PER_JVM && !foundPortInRange) {
|
||||||
try (ServerSocket serverSocket = new ServerSocket()) {
|
try (ServerSocket serverSocket = new ServerSocket()) {
|
||||||
// Set SO_REUSEADDR as we may bind here and not be able to reuse the address immediately without it.
|
// Set SO_REUSEADDR as we may bind here and not be able to reuse the address immediately without it.
|
||||||
serverSocket.setReuseAddress(NetworkUtils.defaultReuseAddress());
|
serverSocket.setReuseAddress(NetworkUtils.defaultReuseAddress());
|
||||||
|
|
Loading…
Reference in New Issue