Skip to content

Commit d14f170

Browse files
authored
Add cluster.remote.connect to deprecation info API (#54142)
This setting was recently deprecated in favor of node.remote_cluster_client. This commit adds this setting to the deprecation info API.
1 parent b8b7516 commit d14f170

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed

x-pack/plugin/deprecation/src/main/java/org/elasticsearch/xpack/deprecation/DeprecationChecks.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ private DeprecationChecks() {
4747
NodeDeprecationChecks::checkMissingRealmOrders,
4848
NodeDeprecationChecks::checkUniqueRealmOrders,
4949
(settings, pluginsAndModules) -> NodeDeprecationChecks.checkThreadPoolListenerQueueSize(settings),
50-
(settings, pluginsAndModules) -> NodeDeprecationChecks.checkThreadPoolListenerSize(settings)
50+
(settings, pluginsAndModules) -> NodeDeprecationChecks.checkThreadPoolListenerSize(settings),
51+
NodeDeprecationChecks::checkClusterRemoteConnectSetting
5152
));
5253

5354
static List<Function<IndexMetaData, DeprecationIssue>> INDEX_SETTINGS_CHECKS =

x-pack/plugin/deprecation/src/main/java/org/elasticsearch/xpack/deprecation/NodeDeprecationChecks.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111
import org.elasticsearch.common.settings.Settings;
1212
import org.elasticsearch.common.util.concurrent.EsExecutors;
1313
import org.elasticsearch.env.Environment;
14+
import org.elasticsearch.node.Node;
1415
import org.elasticsearch.threadpool.FixedExecutorBuilder;
16+
import org.elasticsearch.transport.RemoteClusterService;
1517
import org.elasticsearch.xpack.core.deprecation.DeprecationIssue;
1618
import org.elasticsearch.xpack.core.security.authc.RealmSettings;
1719

@@ -117,6 +119,16 @@ private static DeprecationIssue checkThreadPoolListenerSetting(final String name
117119
"https://www.elastic.co/guide/en/elasticsearch/reference/7.x/breaking-changes-7.7.html#deprecate-listener-thread-pool");
118120
}
119121

122+
public static DeprecationIssue checkClusterRemoteConnectSetting(final Settings settings, final PluginsAndModules pluginsAndModules) {
123+
return checkDeprecatedSetting(
124+
settings,
125+
pluginsAndModules,
126+
RemoteClusterService.ENABLE_REMOTE_CLUSTERS,
127+
Node.NODE_REMOTE_CLUSTER_CLIENT,
128+
"https://www.elastic.co/guide/en/elasticsearch/reference/7.7/breaking-changes-7.7.html#deprecate-cluster-remote-connect"
129+
);
130+
}
131+
120132
private static DeprecationIssue checkDeprecatedSetting(
121133
final Settings settings,
122134
final PluginsAndModules pluginsAndModules,

x-pack/plugin/deprecation/src/test/java/org/elasticsearch/xpack/deprecation/NodeDeprecationChecksTests.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111
import org.elasticsearch.common.settings.Settings;
1212
import org.elasticsearch.common.util.concurrent.EsExecutors;
1313
import org.elasticsearch.env.Environment;
14+
import org.elasticsearch.node.Node;
1415
import org.elasticsearch.test.ESTestCase;
16+
import org.elasticsearch.transport.RemoteClusterService;
1517
import org.elasticsearch.xpack.core.deprecation.DeprecationIssue;
1618
import org.elasticsearch.xpack.core.security.authc.RealmConfig;
1719
import org.elasticsearch.xpack.core.security.authc.RealmSettings;
@@ -176,6 +178,27 @@ public void testThreadPoolListenerSize() {
176178
assertSettingDeprecationsAndWarnings(new String[]{"thread_pool.listener.size"});
177179
}
178180

181+
public void testClusterRemoteConnectSetting() {
182+
final boolean value = randomBoolean();
183+
final Settings settings = Settings.builder().put(RemoteClusterService.ENABLE_REMOTE_CLUSTERS.getKey(), value).build();
184+
final PluginsAndModules pluginsAndModules = new PluginsAndModules(Collections.emptyList(), Collections.emptyList());
185+
final List<DeprecationIssue> issues =
186+
DeprecationChecks.filterChecks(DeprecationChecks.NODE_SETTINGS_CHECKS, c -> c.apply(settings, pluginsAndModules));
187+
final DeprecationIssue expected = new DeprecationIssue(
188+
DeprecationIssue.Level.CRITICAL,
189+
"setting [cluster.remote.connect] is deprecated in favor of setting [node.remote_cluster_client]",
190+
"https://www.elastic.co/guide/en/elasticsearch/reference/7.7/breaking-changes-7.7.html#deprecate-cluster-remote-connect",
191+
String.format(
192+
Locale.ROOT,
193+
"the setting [%s] is currently set to [%b], instead set [%s] to [%2$b]",
194+
RemoteClusterService.ENABLE_REMOTE_CLUSTERS.getKey(),
195+
value,
196+
Node.NODE_REMOTE_CLUSTER_CLIENT.getKey()
197+
));
198+
assertThat(issues, contains(expected));
199+
assertSettingDeprecationsAndWarnings(new Setting<?>[]{RemoteClusterService.ENABLE_REMOTE_CLUSTERS});
200+
}
201+
179202
public void testRemovedSettingNotSet() {
180203
final Settings settings = Settings.EMPTY;
181204
final Setting<?> removedSetting = Setting.simpleString("node.removed_setting");

0 commit comments

Comments
 (0)