Skip to content

Commit d3d6ca5

Browse files
Set RemoteClusterPortSettings.PORT default to 9400 in stateless (#132507)
Serverless cross-project search will enable the remote cluster server by default on search nodes. This PR sets the default "remote_cluster.port" setting value to 9400 for stateless. Relates: ES-12587
1 parent 5142d3d commit d3d6ca5

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

server/src/main/java/org/elasticsearch/transport/RemoteClusterPortSettings.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
import org.elasticsearch.TransportVersion;
1313
import org.elasticsearch.TransportVersions;
14+
import org.elasticsearch.cluster.node.DiscoveryNode;
1415
import org.elasticsearch.common.settings.Setting;
1516
import org.elasticsearch.common.settings.Settings;
1617
import org.elasticsearch.common.unit.ByteSizeUnit;
@@ -70,7 +71,13 @@ public class RemoteClusterPortSettings {
7071
Setting.Property.NodeScope
7172
);
7273

73-
public static final Setting<Integer> PORT = intSetting(REMOTE_CLUSTER_PREFIX + "port", 9443, 0, 65535, Setting.Property.NodeScope);
74+
public static final Setting<Integer> PORT = intSetting(
75+
REMOTE_CLUSTER_PREFIX + "port",
76+
(settings) -> DiscoveryNode.isStateless(settings) ? "9400" : "9443",
77+
0,
78+
65535,
79+
Setting.Property.NodeScope
80+
);
7481

7582
// The default value of -1 means it will use the default bind port as shown above
7683
public static final Setting<Integer> PUBLISH_PORT = intSetting(

server/src/test/java/org/elasticsearch/transport/RemoteClusterPortSettingsTests.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
package org.elasticsearch.transport;
1111

12+
import org.elasticsearch.cluster.node.DiscoveryNode;
1213
import org.elasticsearch.common.network.NetworkAddress;
1314
import org.elasticsearch.common.network.NetworkService;
1415
import org.elasticsearch.common.settings.Setting;
@@ -204,4 +205,11 @@ public void testPortSettingsConstruction() {
204205
assertThat(profileSettings.isDefaultProfile, equalTo(false));
205206
}
206207

208+
public void testRemoteClusterPortDefaultValue() {
209+
assertThat(RemoteClusterPortSettings.PORT.getDefault(Settings.EMPTY), equalTo(9443));
210+
assertThat(
211+
RemoteClusterPortSettings.PORT.getDefault(Settings.builder().put(DiscoveryNode.STATELESS_ENABLED_SETTING_NAME, true).build()),
212+
equalTo(9400)
213+
);
214+
}
207215
}

0 commit comments

Comments
 (0)