Skip to content

Commit 326932b

Browse files
authored
Specify proper port range in InternalTestCluster (#87885) (#87890)
Today nodes started in an `InternalTestCluster` use `transport.port: 0` and `http.port: 0` which selects a port from the ephemeral range. This range is also used by other tests, notably REST tests, and this can lead to collisions and consequent failures when nodes restart. This commit restricts the range of ports using the same algorithm as in `ESTestCase`, avoiding[^1] such collisions. [^1]: technically this isn't quite enough because the ephemeral range on some CI workers overlaps the ranges chosen by `ESTestCase`, but that's a separate issue tracked in #87734 Closes #87448
1 parent 4586c0d commit 326932b

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

test/framework/src/main/java/org/elasticsearch/test/InternalTestCluster.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -380,8 +380,8 @@ public InternalTestCluster(
380380
Builder builder = Settings.builder();
381381
builder.put(Environment.PATH_HOME_SETTING.getKey(), baseDir);
382382
builder.put(Environment.PATH_REPO_SETTING.getKey(), baseDir.resolve("repos"));
383-
builder.put(TransportSettings.PORT.getKey(), 0);
384-
builder.put("http.port", 0);
383+
builder.put(TransportSettings.PORT.getKey(), ESTestCase.getPortRange());
384+
builder.put("http.port", ESTestCase.getPortRange());
385385
if (Strings.hasLength(System.getProperty("tests.es.logger.level"))) {
386386
builder.put("logger.level", System.getProperty("tests.es.logger.level"));
387387
}

0 commit comments

Comments
 (0)