diff --git a/server/build.gradle b/server/build.gradle index 215aad18a5673..6e7bcbde596a0 100644 --- a/server/build.gradle +++ b/server/build.gradle @@ -147,30 +147,6 @@ if (buildParams.snapshotBuild == false) { tasks.named("test").configure { systemProperty 'es.insecure_network_trace_enabled', 'true' - filter { - excludeTestsMatching("*.TransportServiceHandshakeTests.testAcceptsMismatchedServerlessBuildHash") - } - excludes << '**/IndexSettingsOverrideTests.class' -} - -// There are tests rely on system properties to be configured differently. They must run in a separate test job -// since the default does not work for them and configuring the system properties inside the test class/method -// is too late because fields based on the system properties are often initialized statically. -TaskProvider systemPropertiesOverrideTest = tasks.register("systemPropertiesOverrideTest", Test) { - include '**/IndexSettingsOverrideTests.class' - include '**/TransportServiceHandshakeTests.class' - filter { - includeTestsMatching("*.TransportServiceHandshakeTests.testAcceptsMismatchedServerlessBuildHash") - includeTestsMatching("*.IndexSettingsOverrideTests.*") - } - systemProperty 'es.stateless.allow.index.refresh_interval.override', 'true' - systemProperty 'es.serverless_transport', 'true' - classpath = sourceSets.test.runtimeClasspath - testClassesDirs = sourceSets.test.output.classesDirs -} - -tasks.named("check").configure { - dependsOn(systemPropertiesOverrideTest) } tasks.named("thirdPartyAudit").configure { diff --git a/server/src/main/java/org/elasticsearch/index/IndexSettings.java b/server/src/main/java/org/elasticsearch/index/IndexSettings.java index 02b8c5d325425..69ed1a246a2ac 100644 --- a/server/src/main/java/org/elasticsearch/index/IndexSettings.java +++ b/server/src/main/java/org/elasticsearch/index/IndexSettings.java @@ -303,11 +303,6 @@ public final class IndexSettings { static class RefreshIntervalValidator implements Setting.Validator { - static final String STATELESS_ALLOW_INDEX_REFRESH_INTERVAL_OVERRIDE = "es.stateless.allow.index.refresh_interval.override"; - private static final boolean IS_OVERRIDE_ALLOWED = Boolean.parseBoolean( - System.getProperty(STATELESS_ALLOW_INDEX_REFRESH_INTERVAL_OVERRIDE, "false") - ); - @Override public void validate(TimeValue value) {} @@ -323,18 +318,16 @@ public void validate(final TimeValue value, final Map, Object> settin && value.compareTo(STATELESS_MIN_NON_FAST_REFRESH_INTERVAL) < 0 && indexVersion.after(IndexVersions.V_8_10_0)) { - if (IS_OVERRIDE_ALLOWED == false) { - throw new IllegalArgumentException( - "index setting [" - + IndexSettings.INDEX_REFRESH_INTERVAL_SETTING.getKey() - + "=" - + value - + "] should be either " - + TimeValue.MINUS_ONE - + " or equal to or greater than " - + STATELESS_MIN_NON_FAST_REFRESH_INTERVAL - ); - } + throw new IllegalArgumentException( + "index setting [" + + IndexSettings.INDEX_REFRESH_INTERVAL_SETTING.getKey() + + "=" + + value + + "] should be either " + + TimeValue.MINUS_ONE + + " or equal to or greater than " + + STATELESS_MIN_NON_FAST_REFRESH_INTERVAL + ); } } diff --git a/server/src/main/java/org/elasticsearch/transport/TransportService.java b/server/src/main/java/org/elasticsearch/transport/TransportService.java index 77290d25f499c..02b17876b6c61 100644 --- a/server/src/main/java/org/elasticsearch/transport/TransportService.java +++ b/server/src/main/java/org/elasticsearch/transport/TransportService.java @@ -37,7 +37,6 @@ import org.elasticsearch.common.util.concurrent.EsRejectedExecutionException; import org.elasticsearch.common.util.concurrent.ThreadContext; import org.elasticsearch.core.AbstractRefCounted; -import org.elasticsearch.core.Booleans; import org.elasticsearch.core.IOUtils; import org.elasticsearch.core.Nullable; import org.elasticsearch.core.Predicates; @@ -79,15 +78,6 @@ public class TransportService extends AbstractLifecycleComponent private static final Logger logger = LogManager.getLogger(TransportService.class); - /** - * A feature flag enabling transport upgrades for serverless. - */ - static final String SERVERLESS_TRANSPORT_SYSTEM_PROPERTY = "es.serverless_transport"; - private static final boolean SERVERLESS_TRANSPORT_FEATURE_FLAG = Booleans.parseBoolean( - System.getProperty(SERVERLESS_TRANSPORT_SYSTEM_PROPERTY), - false - ); - public static final String DIRECT_RESPONSE_PROFILE = ".direct"; public static final String HANDSHAKE_ACTION_NAME = "internal:transport/handshake"; @@ -672,7 +662,7 @@ public HandshakeResponse(StreamInput in) throws IOException { } private void maybeThrowOnIncompatibleBuild(@Nullable DiscoveryNode node, @Nullable Exception e) { - if (SERVERLESS_TRANSPORT_FEATURE_FLAG == false && isIncompatibleBuild(version, buildHash)) { + if (isIncompatibleBuild(version, buildHash)) { throwOnIncompatibleBuild(node, e); } } diff --git a/server/src/test/java/org/elasticsearch/index/IndexSettingsOverrideTests.java b/server/src/test/java/org/elasticsearch/index/IndexSettingsOverrideTests.java deleted file mode 100644 index 5f580914efab2..0000000000000 --- a/server/src/test/java/org/elasticsearch/index/IndexSettingsOverrideTests.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the "Elastic License - * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side - * Public License v 1"; you may not use this file except in compliance with, at - * your election, the "Elastic License 2.0", the "GNU Affero General Public - * License v3.0 only", or the "Server Side Public License, v 1". - */ - -package org.elasticsearch.index; - -import org.elasticsearch.cluster.metadata.IndexMetadata; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.core.TimeValue; -import org.elasticsearch.test.ESTestCase; - -import static org.elasticsearch.cluster.metadata.IndexMetadata.SETTING_INDEX_VERSION_CREATED; -import static org.elasticsearch.cluster.routing.allocation.ExistingShardsAllocator.EXISTING_SHARDS_ALLOCATOR_SETTING; - -public class IndexSettingsOverrideTests extends ESTestCase { - - public static IndexMetadata newIndexMeta(String name, Settings indexSettings) { - return IndexMetadata.builder(name) - .settings(indexSettings(IndexVersion.current(), randomIntBetween(1, 3), randomIntBetween(1, 3)).put(indexSettings)) - .build(); - } - - public void testStatelessMinRefreshIntervalOverride() { - assumeTrue( - "This test depends on system property configured in build.gradle", - Boolean.parseBoolean( - System.getProperty(IndexSettings.RefreshIntervalValidator.STATELESS_ALLOW_INDEX_REFRESH_INTERVAL_OVERRIDE, "false") - ) - ); - IndexMetadata metadata = newIndexMeta( - "index", - Settings.builder() - .put(IndexMetadata.SETTING_VERSION_CREATED, IndexVersion.current()) - .put(EXISTING_SHARDS_ALLOCATOR_SETTING.getKey(), "stateless") - .put(IndexSettings.INDEX_REFRESH_INTERVAL_SETTING.getKey(), "1s") - .put(SETTING_INDEX_VERSION_CREATED.getKey(), IndexVersions.V_8_10_0.id() + 1) - .build() - ); - IndexSettings settings = new IndexSettings(metadata, Settings.EMPTY); - assertEquals(TimeValue.timeValueSeconds(1), settings.getRefreshInterval()); - } -} diff --git a/server/src/test/java/org/elasticsearch/transport/TransportServiceHandshakeTests.java b/server/src/test/java/org/elasticsearch/transport/TransportServiceHandshakeTests.java index eaa8cde79870a..eafc7c97b40b5 100644 --- a/server/src/test/java/org/elasticsearch/transport/TransportServiceHandshakeTests.java +++ b/server/src/test/java/org/elasticsearch/transport/TransportServiceHandshakeTests.java @@ -9,7 +9,6 @@ package org.elasticsearch.transport; -import org.elasticsearch.Build; import org.elasticsearch.ExceptionsHelper; import org.elasticsearch.TransportVersion; import org.elasticsearch.Version; @@ -371,34 +370,6 @@ public void testRejectsMismatchedBuildHash() { assertFalse(transportServiceA.nodeConnected(discoveryNode)); } - public void testAcceptsMismatchedServerlessBuildHash() { - assumeTrue("Current build needs to be a snapshot", Build.current().isSnapshot()); - final DisruptingTransportInterceptor transportInterceptorA = new DisruptingTransportInterceptor(); - final DisruptingTransportInterceptor transportInterceptorB = new DisruptingTransportInterceptor(); - transportInterceptorA.setModifyBuildHash(true); - transportInterceptorB.setModifyBuildHash(true); - final Settings settings = Settings.builder() - .put("cluster.name", "a") - .put(IGNORE_DESERIALIZATION_ERRORS_SETTING.getKey(), true) // suppress assertions to test production error-handling - .build(); - final TransportService transportServiceA = startServices( - "TS_A", - settings, - TransportVersion.current(), - VersionInformation.CURRENT, - transportInterceptorA - ); - final TransportService transportServiceB = startServices( - "TS_B", - settings, - TransportVersion.current(), - VersionInformation.CURRENT, - transportInterceptorB - ); - AbstractSimpleTransportTestCase.connectToNode(transportServiceA, transportServiceB.getLocalNode(), TestProfiles.LIGHT_PROFILE); - assertTrue(transportServiceA.nodeConnected(transportServiceB.getLocalNode())); - } - public void testAcceptsMismatchedBuildHashFromDifferentVersion() { final DisruptingTransportInterceptor transportInterceptorA = new DisruptingTransportInterceptor(); final DisruptingTransportInterceptor transportInterceptorB = new DisruptingTransportInterceptor();