diff --git a/server/src/main/java/org/elasticsearch/TransportVersions.java b/server/src/main/java/org/elasticsearch/TransportVersions.java index ca43951a91b39..d620de336e86b 100644 --- a/server/src/main/java/org/elasticsearch/TransportVersions.java +++ b/server/src/main/java/org/elasticsearch/TransportVersions.java @@ -181,8 +181,6 @@ static TransportVersion def(int id) { public static final TransportVersion REMOVE_ALL_APPLICABLE_SELECTOR_9_0 = def(9_000_0_05); public static final TransportVersion BYTE_SIZE_VALUE_ALWAYS_USES_BYTES_90 = def(9_000_0_06); public static final TransportVersion RETRY_ILM_ASYNC_ACTION_REQUIRE_ERROR_90 = def(9_000_0_07); - public static final TransportVersion RE_REMOVE_MIN_COMPATIBLE_SHARD_NODE_90 = def(9_000_0_08); - public static final TransportVersion STORED_SCRIPT_CONTENT_LENGTH_90 = def(9_000_0_09); public static final TransportVersion COHERE_BIT_EMBEDDING_TYPE_SUPPORT_ADDED = def(9_001_0_00); public static final TransportVersion REMOVE_SNAPSHOT_FAILURES = def(9_002_0_00); public static final TransportVersion TRANSPORT_STATS_HANDLING_TIME_REQUIRED = def(9_003_0_00); @@ -200,9 +198,7 @@ static TransportVersion def(int id) { public static final TransportVersion ESQL_SERIALIZE_SOURCE_FUNCTIONS_WARNINGS = def(9_016_0_00); public static final TransportVersion ESQL_DRIVER_NODE_DESCRIPTION = def(9_017_0_00); public static final TransportVersion MULTI_PROJECT = def(9_018_0_00); - public static final TransportVersion STORED_SCRIPT_CONTENT_LENGTH = def(9_019_0_00); public static final TransportVersion JINA_AI_EMBEDDING_TYPE_SUPPORT_ADDED = def(9_020_0_00); - public static final TransportVersion RE_REMOVE_MIN_COMPATIBLE_SHARD_NODE = def(9_021_0_00); public static final TransportVersion UNASSIGENEDINFO_RESHARD_ADDED = def(9_022_0_00); public static final TransportVersion MAX_OPERATION_SIZE_REJECTIONS_ADDED = def(9_024_0_00); public static final TransportVersion RETRY_ILM_ASYNC_ACTION_REQUIRE_ERROR = def(9_025_0_00); @@ -252,14 +248,6 @@ static TransportVersion def(int id) { public static final TransportVersion ESQL_TIME_SERIES_SOURCE_STATUS = def(9_076_0_00); public static final TransportVersion NODES_STATS_SUPPORTS_MULTI_PROJECT = def(9_079_0_00); public static final TransportVersion ESQL_LIMIT_ROW_SIZE = def(9_085_0_00); - public static final TransportVersion SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS = def(9_093_0_00); - public static final TransportVersion SEARCH_LOAD_PER_INDEX_STATS = def(9_095_0_00); - public static final TransportVersion HEAP_USAGE_IN_CLUSTER_INFO = def(9_096_0_00); - public static final TransportVersion PROJECT_DELETION_GLOBAL_BLOCK = def(9_098_0_00); - public static final TransportVersion SECURITY_CLOUD_API_KEY_REALM_AND_TYPE = def(9_099_0_00); - public static final TransportVersion STATE_PARAM_GET_SNAPSHOT = def(9_100_0_00); - public static final TransportVersion PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP = def(9_101_0_00); - public static final TransportVersion CLUSTER_STATE_PROJECTS_SETTINGS = def(9_108_0_00); /* * STOP! READ THIS FIRST! No, really, diff --git a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/get/GetSnapshotsRequest.java b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/get/GetSnapshotsRequest.java index 628e48ab1ceb3..c5fe71531df70 100644 --- a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/get/GetSnapshotsRequest.java +++ b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/get/GetSnapshotsRequest.java @@ -42,7 +42,7 @@ public class GetSnapshotsRequest extends MasterNodeRequest public static final boolean DEFAULT_VERBOSE_MODE = true; private static final TransportVersion INDICES_FLAG_VERSION = TransportVersions.V_8_3_0; - private static final TransportVersion STATE_FLAG_VERSION = TransportVersions.STATE_PARAM_GET_SNAPSHOT; + private static final TransportVersion STATE_FLAG_VERSION = TransportVersion.fromName("state_param_get_snapshot"); public static final int NO_LIMIT = -1; @@ -124,7 +124,7 @@ public GetSnapshotsRequest(StreamInput in) throws IOException { if (in.getTransportVersion().onOrAfter(INDICES_FLAG_VERSION)) { includeIndexNames = in.readBoolean(); } - if (in.getTransportVersion().onOrAfter(STATE_FLAG_VERSION)) { + if (in.getTransportVersion().supports(STATE_FLAG_VERSION)) { states = in.readEnumSet(SnapshotState.class); } else { states = EnumSet.allOf(SnapshotState.class); @@ -148,7 +148,7 @@ public void writeTo(StreamOutput out) throws IOException { if (out.getTransportVersion().onOrAfter(INDICES_FLAG_VERSION)) { out.writeBoolean(includeIndexNames); } - if (out.getTransportVersion().onOrAfter(STATE_FLAG_VERSION)) { + if (out.getTransportVersion().supports(STATE_FLAG_VERSION)) { out.writeEnumSet(states); } else if (states.equals(EnumSet.allOf(SnapshotState.class)) == false) { final var errorString = "GetSnapshotsRequest [states] field is not supported on all nodes in the cluster"; diff --git a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotIndexShardStatus.java b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotIndexShardStatus.java index c745199627026..00a4e0a22430c 100644 --- a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotIndexShardStatus.java +++ b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotIndexShardStatus.java @@ -9,6 +9,7 @@ package org.elasticsearch.action.admin.cluster.snapshots.status; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.support.broadcast.BroadcastShardResponse; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; @@ -22,10 +23,12 @@ import java.io.IOException; import java.util.Objects; -import static org.elasticsearch.TransportVersions.SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS; - public class SnapshotIndexShardStatus extends BroadcastShardResponse implements ToXContentFragment { + private static final TransportVersion SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS = TransportVersion.fromName( + "snapshot_index_shard_status_missing_stats" + ); + private final SnapshotIndexShardStage stage; private final SnapshotStats stats; @@ -42,7 +45,7 @@ public SnapshotIndexShardStatus(StreamInput in) throws IOException { stats = new SnapshotStats(in); nodeId = in.readOptionalString(); failure = in.readOptionalString(); - if (in.getTransportVersion().onOrAfter(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { + if (in.getTransportVersion().supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { description = in.readOptionalString(); } } @@ -159,7 +162,7 @@ public void writeTo(StreamOutput out) throws IOException { stats.writeTo(out); out.writeOptionalString(nodeId); out.writeOptionalString(failure); - if (out.getTransportVersion().onOrAfter(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { + if (out.getTransportVersion().supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { out.writeOptionalString(description); } } diff --git a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStats.java b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStats.java index af3a202ff56dd..ac5ca753e01d4 100644 --- a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStats.java +++ b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStats.java @@ -9,6 +9,7 @@ package org.elasticsearch.action.admin.cluster.snapshots.status; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -21,10 +22,12 @@ import java.io.IOException; -import static org.elasticsearch.TransportVersions.SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS; - public class SnapshotStats implements Writeable, ToXContentObject { + private static final TransportVersion SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS = TransportVersion.fromName( + "snapshot_index_shard_status_missing_stats" + ); + private long startTime; private long time; private int incrementalFileCount; @@ -38,7 +41,7 @@ public class SnapshotStats implements Writeable, ToXContentObject { SnapshotStats(StreamInput in) throws IOException { // We use a boolean to indicate if the stats are present (true) or missing (false), to skip writing all the values if missing. - if (in.getTransportVersion().onOrAfter(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS) && in.readBoolean() == false) { + if (in.getTransportVersion().supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS) && in.readBoolean() == false) { startTime = 0L; time = 0L; incrementalFileCount = -1; @@ -156,7 +159,7 @@ public long getProcessedSize() { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getTransportVersion().onOrAfter(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { + if (out.getTransportVersion().supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { // We use a boolean to indicate if the stats are present (true) or missing (false), to skip writing all the values if missing. if (isMissingStats()) { out.writeBoolean(false); diff --git a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/TransportSnapshotsStatusAction.java b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/TransportSnapshotsStatusAction.java index fbb3815eab079..441dd86e57137 100644 --- a/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/TransportSnapshotsStatusAction.java +++ b/server/src/main/java/org/elasticsearch/action/admin/cluster/snapshots/status/TransportSnapshotsStatusAction.java @@ -12,7 +12,6 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.elasticsearch.TransportVersion; -import org.elasticsearch.TransportVersions; import org.elasticsearch.action.ActionListener; import org.elasticsearch.action.ActionType; import org.elasticsearch.action.support.ActionFilters; @@ -73,6 +72,10 @@ public class TransportSnapshotsStatusAction extends TransportMasterNodeAction TYPE = new ActionType<>("cluster:admin/snapshot/status"); private static final Logger logger = LogManager.getLogger(TransportSnapshotsStatusAction.class); + private static final TransportVersion SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS = TransportVersion.fromName( + "snapshot_index_shard_status_missing_stats" + ); + private final RepositoriesService repositoriesService; private final NodeClient client; @@ -245,7 +248,7 @@ void buildResponse( // When processing currently running snapshots, instead of reading the statistics from the repository, which can be // expensive, we choose instead to provide a message to the caller explaining why the stats are missing and the API // that can be used to load them once the snapshot has completed. - if (minTransportVersion.onOrAfter(TransportVersions.SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { + if (minTransportVersion.supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS)) { shardStatus = SnapshotIndexShardStatus.forDoneButMissingStats(shardId, """ Snapshot shard stats missing from a currently running snapshot due to a node leaving the cluster after \ completing the shard snapshot; retry once the snapshot has completed to load all shard stats from the \ diff --git a/server/src/main/java/org/elasticsearch/action/admin/cluster/storedscripts/PutStoredScriptRequest.java b/server/src/main/java/org/elasticsearch/action/admin/cluster/storedscripts/PutStoredScriptRequest.java index be44633d7c76d..0a939ea42d01f 100644 --- a/server/src/main/java/org/elasticsearch/action/admin/cluster/storedscripts/PutStoredScriptRequest.java +++ b/server/src/main/java/org/elasticsearch/action/admin/cluster/storedscripts/PutStoredScriptRequest.java @@ -9,7 +9,7 @@ package org.elasticsearch.action.admin.cluster.storedscripts; -import org.elasticsearch.TransportVersions; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.ActionRequestValidationException; import org.elasticsearch.action.support.master.AcknowledgedRequest; import org.elasticsearch.common.Strings; @@ -32,6 +32,8 @@ public class PutStoredScriptRequest extends AcknowledgedRequest implements ToXContentFragment { + private static final TransportVersion STORED_SCRIPT_CONTENT_LENGTH = TransportVersion.fromName("stored_script_content_length"); + @Nullable private final String id; @@ -45,8 +47,7 @@ public class PutStoredScriptRequest extends AcknowledgedRequest leastAvailableSpaceUsage; private final Map mostAvailableSpaceUsage; @@ -102,7 +103,7 @@ public ClusterInfo(StreamInput in) throws IOException { ? in.readImmutableMap(NodeAndShard::new, StreamInput::readString) : in.readImmutableMap(nested -> NodeAndShard.from(new ShardRouting(nested)), StreamInput::readString); this.reservedSpace = in.readImmutableMap(NodeAndPath::new, ReservedSpace::new); - if (in.getTransportVersion().onOrAfter(TransportVersions.HEAP_USAGE_IN_CLUSTER_INFO)) { + if (in.getTransportVersion().supports(HEAP_USAGE_IN_CLUSTER_INFO)) { this.estimatedHeapUsages = in.readImmutableMap(EstimatedHeapUsage::new); } else { this.estimatedHeapUsages = Map.of(); @@ -121,7 +122,7 @@ public void writeTo(StreamOutput out) throws IOException { out.writeMap(this.dataPath, (o, k) -> createFakeShardRoutingFromNodeAndShard(k).writeTo(o), StreamOutput::writeString); } out.writeMap(this.reservedSpace); - if (out.getTransportVersion().onOrAfter(TransportVersions.HEAP_USAGE_IN_CLUSTER_INFO)) { + if (out.getTransportVersion().supports(HEAP_USAGE_IN_CLUSTER_INFO)) { out.writeMap(this.estimatedHeapUsages, StreamOutput::writeWriteable); } } diff --git a/server/src/main/java/org/elasticsearch/cluster/RepositoryCleanupInProgress.java b/server/src/main/java/org/elasticsearch/cluster/RepositoryCleanupInProgress.java index a1abb4647e957..3de1ae219e5c2 100644 --- a/server/src/main/java/org/elasticsearch/cluster/RepositoryCleanupInProgress.java +++ b/server/src/main/java/org/elasticsearch/cluster/RepositoryCleanupInProgress.java @@ -23,8 +23,6 @@ import java.util.List; import java.util.Objects; -import static org.elasticsearch.TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP; - /** * A repository cleanup request entry. Part of the cluster state. */ @@ -34,6 +32,10 @@ public final class RepositoryCleanupInProgress extends AbstractNamedDiffable entries; public static RepositoryCleanupInProgress get(ClusterState state) { @@ -114,7 +116,7 @@ public TransportVersion getMinimalSupportedVersion() { public record Entry(ProjectId projectId, String repository, long repositoryStateId) implements Writeable, RepositoryOperation { public static Entry readFrom(StreamInput in) throws IOException { - final ProjectId projectId = in.getTransportVersion().onOrAfter(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) + final ProjectId projectId = in.getTransportVersion().supports(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) ? ProjectId.readFrom(in) : ProjectId.DEFAULT; return new Entry(projectId, in.readString(), in.readLong()); @@ -137,7 +139,7 @@ public String repository() { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getTransportVersion().onOrAfter(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP)) { + if (out.getTransportVersion().supports(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP)) { projectId.writeTo(out); } else { if (ProjectId.DEFAULT.equals(projectId) == false) { diff --git a/server/src/main/java/org/elasticsearch/cluster/SnapshotDeletionsInProgress.java b/server/src/main/java/org/elasticsearch/cluster/SnapshotDeletionsInProgress.java index bdd5dd25daba2..7db86414b9d17 100644 --- a/server/src/main/java/org/elasticsearch/cluster/SnapshotDeletionsInProgress.java +++ b/server/src/main/java/org/elasticsearch/cluster/SnapshotDeletionsInProgress.java @@ -32,8 +32,6 @@ import java.util.List; import java.util.Set; -import static org.elasticsearch.TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP; - /** * Represents the in-progress snapshot deletions in the cluster state. */ @@ -43,6 +41,10 @@ public class SnapshotDeletionsInProgress extends AbstractNamedDiffable i public static final String TYPE = "snapshot_deletions"; + private static final TransportVersion PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP = TransportVersion.fromName( + "project_id_in_snapshots_deletions_and_repo_cleanup" + ); + // the list of snapshot deletion request entries private final List entries; @@ -237,7 +239,7 @@ public Entry( @SuppressForbidden(reason = "using a private constructor within the same file") public static Entry readFrom(StreamInput in) throws IOException { - final ProjectId projectId = in.getTransportVersion().onOrAfter(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) + final ProjectId projectId = in.getTransportVersion().supports(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) ? ProjectId.readFrom(in) : ProjectId.DEFAULT; return new Entry( @@ -279,7 +281,7 @@ public Entry withRepoGen(long repoGen) { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getTransportVersion().onOrAfter(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP)) { + if (out.getTransportVersion().supports(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP)) { projectId.writeTo(out); } else { if (ProjectId.DEFAULT.equals(projectId) == false) { diff --git a/server/src/main/java/org/elasticsearch/cluster/block/ClusterBlocks.java b/server/src/main/java/org/elasticsearch/cluster/block/ClusterBlocks.java index 522d47009ec29..bfe56b9320ebc 100644 --- a/server/src/main/java/org/elasticsearch/cluster/block/ClusterBlocks.java +++ b/server/src/main/java/org/elasticsearch/cluster/block/ClusterBlocks.java @@ -9,6 +9,7 @@ package org.elasticsearch.cluster.block; +import org.elasticsearch.TransportVersion; import org.elasticsearch.TransportVersions; import org.elasticsearch.cluster.Diff; import org.elasticsearch.cluster.Diffable; @@ -45,6 +46,8 @@ public class ClusterBlocks implements Diffable { public static final ClusterBlocks EMPTY_CLUSTER_BLOCK = new ClusterBlocks(Set.of(), Map.of()); + private static final TransportVersion PROJECT_DELETION_GLOBAL_BLOCK = TransportVersion.fromName("project_deletion_global_block"); + private final Set global; /** @@ -563,7 +566,7 @@ public boolean isEmpty() { static ProjectBlocks readFrom(StreamInput in) throws IOException { Map> indices = in.readImmutableMap(i -> i.readString().intern(), ClusterBlocks::readBlockSet); Set projectGlobal; - if (in.getTransportVersion().onOrAfter(TransportVersions.PROJECT_DELETION_GLOBAL_BLOCK)) { + if (in.getTransportVersion().supports(PROJECT_DELETION_GLOBAL_BLOCK)) { projectGlobal = ClusterBlocks.readBlockSet(in); } else { projectGlobal = Set.of(); @@ -574,7 +577,7 @@ static ProjectBlocks readFrom(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { out.writeMap(indices, (o, s) -> writeBlockSet(s, o)); - if (out.getTransportVersion().onOrAfter(TransportVersions.PROJECT_DELETION_GLOBAL_BLOCK)) { + if (out.getTransportVersion().supports(PROJECT_DELETION_GLOBAL_BLOCK)) { writeBlockSet(projectGlobal, out); } else { assert projectGlobal.isEmpty() : "Any MP-enabled cluster must be past TransportVersions.PROJECT_DELETION_GLOBAL_BLOCK"; diff --git a/server/src/main/java/org/elasticsearch/cluster/metadata/ProjectMetadata.java b/server/src/main/java/org/elasticsearch/cluster/metadata/ProjectMetadata.java index 4a10964b1be57..041b00703b9d7 100644 --- a/server/src/main/java/org/elasticsearch/cluster/metadata/ProjectMetadata.java +++ b/server/src/main/java/org/elasticsearch/cluster/metadata/ProjectMetadata.java @@ -10,6 +10,7 @@ package org.elasticsearch.cluster.metadata; import org.apache.lucene.util.CollectionUtil; +import org.elasticsearch.TransportVersion; import org.elasticsearch.TransportVersions; import org.elasticsearch.cluster.Diff; import org.elasticsearch.cluster.Diffable; @@ -85,6 +86,8 @@ public class ProjectMetadata implements Iterable, Diffable PROJECT_CUSTOM_VALUE_SERIALIZER = new NamedDiffableValueSerializer<>(Metadata.ProjectCustom.class); + private static final TransportVersion CLUSTER_STATE_PROJECTS_SETTINGS = TransportVersion.fromName("cluster_state_projects_settings"); + private final ProjectId id; private final ImmutableOpenMap indices; @@ -2201,8 +2204,8 @@ public static ProjectMetadata readFrom(StreamInput in) throws IOException { builder.put(ReservedStateMetadata.readFrom(in)); } - if (in.getTransportVersion() - .between(TransportVersions.PROJECT_METADATA_SETTINGS, TransportVersions.CLUSTER_STATE_PROJECTS_SETTINGS)) { + if (in.getTransportVersion().supports(TransportVersions.PROJECT_METADATA_SETTINGS) + && in.getTransportVersion().supports(CLUSTER_STATE_PROJECTS_SETTINGS) == false) { Settings.readSettingsFromStream(in); } @@ -2237,8 +2240,8 @@ public void writeTo(StreamOutput out) throws IOException { VersionedNamedWriteable.writeVersionedWriteables(out, customs.values()); out.writeCollection(reservedStateMetadata.values()); - if (out.getTransportVersion() - .between(TransportVersions.PROJECT_METADATA_SETTINGS, TransportVersions.CLUSTER_STATE_PROJECTS_SETTINGS)) { + if (out.getTransportVersion().supports(TransportVersions.PROJECT_METADATA_SETTINGS) + && out.getTransportVersion().supports(CLUSTER_STATE_PROJECTS_SETTINGS) == false) { Settings.EMPTY.writeTo(out); } } @@ -2305,8 +2308,8 @@ private ProjectMetadataDiff(ProjectMetadata before, ProjectMetadata after) { DiffableUtils.getStringKeySerializer(), RESERVED_DIFF_VALUE_READER ); - if (in.getTransportVersion() - .between(TransportVersions.PROJECT_METADATA_SETTINGS, TransportVersions.CLUSTER_STATE_PROJECTS_SETTINGS)) { + if (in.getTransportVersion().supports(TransportVersions.PROJECT_METADATA_SETTINGS) + && in.getTransportVersion().supports(CLUSTER_STATE_PROJECTS_SETTINGS) == false) { Settings.readSettingsDiffFromStream(in); } } @@ -2333,8 +2336,8 @@ public void writeTo(StreamOutput out) throws IOException { templates.writeTo(out); customs.writeTo(out); reservedStateMetadata.writeTo(out); - if (out.getTransportVersion() - .between(TransportVersions.PROJECT_METADATA_SETTINGS, TransportVersions.CLUSTER_STATE_PROJECTS_SETTINGS)) { + if (out.getTransportVersion().supports(TransportVersions.PROJECT_METADATA_SETTINGS) + && out.getTransportVersion().supports(CLUSTER_STATE_PROJECTS_SETTINGS) == false) { Settings.EMPTY_DIFF.writeTo(out); } } diff --git a/server/src/main/java/org/elasticsearch/cluster/project/ProjectStateRegistry.java b/server/src/main/java/org/elasticsearch/cluster/project/ProjectStateRegistry.java index 1ae81b8daa0e9..874f8308b564a 100644 --- a/server/src/main/java/org/elasticsearch/cluster/project/ProjectStateRegistry.java +++ b/server/src/main/java/org/elasticsearch/cluster/project/ProjectStateRegistry.java @@ -10,7 +10,6 @@ package org.elasticsearch.cluster.project; import org.elasticsearch.TransportVersion; -import org.elasticsearch.TransportVersions; import org.elasticsearch.cluster.AbstractNamedDiffable; import org.elasticsearch.cluster.ClusterState; import org.elasticsearch.cluster.NamedDiff; @@ -34,6 +33,8 @@ public class ProjectStateRegistry extends AbstractNamedDiffable projectsSettings; public ProjectStateRegistry(StreamInput in) throws IOException { @@ -89,7 +90,7 @@ public String getWriteableName() { @Override public TransportVersion getMinimalSupportedVersion() { - return TransportVersions.CLUSTER_STATE_PROJECTS_SETTINGS; + return CLUSTER_STATE_PROJECTS_SETTINGS; } @Override diff --git a/server/src/main/java/org/elasticsearch/index/search/stats/SearchStats.java b/server/src/main/java/org/elasticsearch/index/search/stats/SearchStats.java index 4d6247796af59..d3fb292965fd2 100644 --- a/server/src/main/java/org/elasticsearch/index/search/stats/SearchStats.java +++ b/server/src/main/java/org/elasticsearch/index/search/stats/SearchStats.java @@ -9,6 +9,7 @@ package org.elasticsearch.index.search.stats; +import org.elasticsearch.TransportVersion; import org.elasticsearch.TransportVersions; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; @@ -30,6 +31,8 @@ public class SearchStats implements Writeable, ToXContentFragment { public static class Stats implements Writeable, ToXContentFragment { + private static final TransportVersion SEARCH_LOAD_PER_INDEX_STATS = TransportVersion.fromName("search_load_per_index_stats"); + private long queryCount; private long queryTimeInMillis; private long queryCurrent; @@ -118,7 +121,7 @@ private Stats(StreamInput in) throws IOException { fetchFailure = in.readVLong(); } - if (in.getTransportVersion().onOrAfter(TransportVersions.SEARCH_LOAD_PER_INDEX_STATS)) { + if (in.getTransportVersion().supports(SEARCH_LOAD_PER_INDEX_STATS)) { recentSearchLoad = in.readDouble(); } } @@ -146,7 +149,7 @@ public void writeTo(StreamOutput out) throws IOException { out.writeVLong(fetchFailure); } - if (out.getTransportVersion().onOrAfter(TransportVersions.SEARCH_LOAD_PER_INDEX_STATS)) { + if (out.getTransportVersion().supports(SEARCH_LOAD_PER_INDEX_STATS)) { out.writeDouble(recentSearchLoad); } } diff --git a/server/src/main/resources/transport/definitions/referable/cluster_state_projects_settings.csv b/server/src/main/resources/transport/definitions/referable/cluster_state_projects_settings.csv new file mode 100644 index 0000000000000..c9aad0ff52b34 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/cluster_state_projects_settings.csv @@ -0,0 +1 @@ +9108000 diff --git a/server/src/main/resources/transport/definitions/referable/heap_usage_in_cluster_info.csv b/server/src/main/resources/transport/definitions/referable/heap_usage_in_cluster_info.csv new file mode 100644 index 0000000000000..cc34146532041 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/heap_usage_in_cluster_info.csv @@ -0,0 +1 @@ +9096000 diff --git a/server/src/main/resources/transport/definitions/referable/project_deletion_global_block.csv b/server/src/main/resources/transport/definitions/referable/project_deletion_global_block.csv new file mode 100644 index 0000000000000..2e8c0268d0cc1 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/project_deletion_global_block.csv @@ -0,0 +1 @@ +9098000 diff --git a/server/src/main/resources/transport/definitions/referable/project_id_in_snapshots_deletions_and_repo_cleanup.csv b/server/src/main/resources/transport/definitions/referable/project_id_in_snapshots_deletions_and_repo_cleanup.csv new file mode 100644 index 0000000000000..78da42f80550d --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/project_id_in_snapshots_deletions_and_repo_cleanup.csv @@ -0,0 +1 @@ +9101000 diff --git a/server/src/main/resources/transport/definitions/referable/re_remove_min_compatible_shard_node.csv b/server/src/main/resources/transport/definitions/referable/re_remove_min_compatible_shard_node.csv new file mode 100644 index 0000000000000..80ef4e6244747 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/re_remove_min_compatible_shard_node.csv @@ -0,0 +1 @@ +9021000,9000008 diff --git a/server/src/main/resources/transport/definitions/referable/search_load_per_index_stats.csv b/server/src/main/resources/transport/definitions/referable/search_load_per_index_stats.csv new file mode 100644 index 0000000000000..df1f0e180bb6a --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/search_load_per_index_stats.csv @@ -0,0 +1 @@ +9095000 diff --git a/server/src/main/resources/transport/definitions/referable/security_cloud_api_key_realm_and_type.csv b/server/src/main/resources/transport/definitions/referable/security_cloud_api_key_realm_and_type.csv new file mode 100644 index 0000000000000..05e75152ef567 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/security_cloud_api_key_realm_and_type.csv @@ -0,0 +1 @@ +9099000 diff --git a/server/src/main/resources/transport/definitions/referable/snapshot_index_shard_status_missing_stats.csv b/server/src/main/resources/transport/definitions/referable/snapshot_index_shard_status_missing_stats.csv new file mode 100644 index 0000000000000..f70e41981ed05 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/snapshot_index_shard_status_missing_stats.csv @@ -0,0 +1 @@ +9093000 diff --git a/server/src/main/resources/transport/definitions/referable/state_param_get_snapshot.csv b/server/src/main/resources/transport/definitions/referable/state_param_get_snapshot.csv new file mode 100644 index 0000000000000..5e5bbccf10fe0 --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/state_param_get_snapshot.csv @@ -0,0 +1 @@ +9100000 diff --git a/server/src/main/resources/transport/definitions/referable/stored_script_content_length.csv b/server/src/main/resources/transport/definitions/referable/stored_script_content_length.csv new file mode 100644 index 0000000000000..d9e670fb317fe --- /dev/null +++ b/server/src/main/resources/transport/definitions/referable/stored_script_content_length.csv @@ -0,0 +1 @@ +9019000,9000009 diff --git a/server/src/test/java/org/elasticsearch/TransportVersionTests.java b/server/src/test/java/org/elasticsearch/TransportVersionTests.java index c35c8767b3582..6f6e03bff18f5 100644 --- a/server/src/test/java/org/elasticsearch/TransportVersionTests.java +++ b/server/src/test/java/org/elasticsearch/TransportVersionTests.java @@ -419,7 +419,7 @@ public void testTransportVersionsLocked() { "TransportVersions.java is locked. Generate transport versions with TransportVersion.fromName " + "and generateTransportVersion gradle task", TransportVersions.DEFINED_VERSIONS.getLast().id(), - equalTo(9_108_0_00) + equalTo(9_085_0_00) ); } } diff --git a/server/src/test/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStatsTests.java b/server/src/test/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStatsTests.java index 4aa3673e604b0..bfaf375528062 100644 --- a/server/src/test/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStatsTests.java +++ b/server/src/test/java/org/elasticsearch/action/admin/cluster/snapshots/status/SnapshotStatsTests.java @@ -10,7 +10,6 @@ package org.elasticsearch.action.admin.cluster.snapshots.status; import org.elasticsearch.TransportVersion; -import org.elasticsearch.TransportVersions; import org.elasticsearch.common.io.stream.ByteArrayStreamInput; import org.elasticsearch.common.io.stream.OutputStreamStreamOutput; import org.elasticsearch.common.xcontent.XContentParserUtils; @@ -23,6 +22,10 @@ public class SnapshotStatsTests extends AbstractXContentTestCase { + private static final TransportVersion SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS = TransportVersion.fromName( + "snapshot_index_shard_status_missing_stats" + ); + @Override protected SnapshotStats createTestInstance() { // Using less than half of Long.MAX_VALUE for random time values to avoid long overflow in tests that add the two time values @@ -79,7 +82,7 @@ public void testMissingStats() throws IOException { // Verify round trip Transport serialization. for (var transportVersion : List.of( TransportVersion.minimumCompatible(), - TransportVersions.SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS, + SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS, TransportVersion.current() )) { @@ -89,7 +92,7 @@ public void testMissingStats() throws IOException { try (var streamOut = new OutputStreamStreamOutput(bytesOut)) { streamOut.setTransportVersion(transportVersion); - if (transportVersion.onOrAfter(TransportVersions.SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS) || stats != missingStats) { + if (transportVersion.supports(SNAPSHOT_INDEX_SHARD_STATUS_MISSING_STATS) || stats != missingStats) { stats.writeTo(streamOut); } else { assertThrows(IllegalStateException.class, () -> stats.writeTo(streamOut)); diff --git a/server/src/test/java/org/elasticsearch/cluster/RepositoryCleanupInProgressTests.java b/server/src/test/java/org/elasticsearch/cluster/RepositoryCleanupInProgressTests.java index 9b6f9da592c70..14a4d08908f85 100644 --- a/server/src/test/java/org/elasticsearch/cluster/RepositoryCleanupInProgressTests.java +++ b/server/src/test/java/org/elasticsearch/cluster/RepositoryCleanupInProgressTests.java @@ -9,7 +9,7 @@ package org.elasticsearch.cluster; -import org.elasticsearch.TransportVersions; +import org.elasticsearch.TransportVersion; import org.elasticsearch.cluster.metadata.ProjectId; import org.elasticsearch.common.io.stream.BytesStreamOutput; import org.elasticsearch.common.io.stream.NamedWriteableAwareStreamInput; @@ -30,6 +30,10 @@ public class RepositoryCleanupInProgressTests extends SimpleDiffableWireSerializationTestCase { + private static final TransportVersion PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP = TransportVersion.fromName( + "project_id_in_snapshots_deletions_and_repo_cleanup" + ); + private Supplier projectIdSupplier; @Before @@ -90,9 +94,7 @@ private RepositoryCleanupInProgress.Entry randomCleanupEntry() { public void testSerializationBwc() throws IOException { projectIdSupplier = () -> ProjectId.DEFAULT; - final var oldVersion = TransportVersionUtils.getPreviousVersion( - TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP - ); + final var oldVersion = TransportVersionUtils.getPreviousVersion(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP); final BytesStreamOutput out = new BytesStreamOutput(); out.setTransportVersion(oldVersion); final ClusterState.Custom original = createTestInstance(); @@ -106,9 +108,7 @@ public void testSerializationBwc() throws IOException { public void testDiffSerializationBwc() throws IOException { projectIdSupplier = () -> ProjectId.DEFAULT; - final var oldVersion = TransportVersionUtils.getPreviousVersion( - TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP - ); + final var oldVersion = TransportVersionUtils.getPreviousVersion(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP); final BytesStreamOutput out = new BytesStreamOutput(); out.setTransportVersion(oldVersion); diff --git a/server/src/test/java/org/elasticsearch/cluster/SnapshotDeletionsInProgressTests.java b/server/src/test/java/org/elasticsearch/cluster/SnapshotDeletionsInProgressTests.java index 8a6b20da5849b..738764fbe46e4 100644 --- a/server/src/test/java/org/elasticsearch/cluster/SnapshotDeletionsInProgressTests.java +++ b/server/src/test/java/org/elasticsearch/cluster/SnapshotDeletionsInProgressTests.java @@ -9,7 +9,7 @@ package org.elasticsearch.cluster; -import org.elasticsearch.TransportVersions; +import org.elasticsearch.TransportVersion; import org.elasticsearch.cluster.metadata.ProjectId; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.BytesStreamOutput; @@ -37,6 +37,10 @@ public class SnapshotDeletionsInProgressTests extends SimpleDiffableWireSerializationTestCase { + private static final TransportVersion PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP = TransportVersion.fromName( + "project_id_in_snapshots_deletions_and_repo_cleanup" + ); + private Supplier projectIdSupplier; @Before @@ -123,9 +127,7 @@ private SnapshotDeletionsInProgress.Entry randomDeletionEntry() { public void testSerializationBwc() throws IOException { projectIdSupplier = () -> ProjectId.DEFAULT; - final var oldVersion = TransportVersionUtils.getPreviousVersion( - TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP - ); + final var oldVersion = TransportVersionUtils.getPreviousVersion(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP); final BytesStreamOutput out = new BytesStreamOutput(); out.setTransportVersion(oldVersion); final ClusterState.Custom original = createTestInstance(); @@ -139,9 +141,7 @@ public void testSerializationBwc() throws IOException { public void testDiffSerializationBwc() throws IOException { projectIdSupplier = () -> ProjectId.DEFAULT; - final var oldVersion = TransportVersionUtils.getPreviousVersion( - TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP - ); + final var oldVersion = TransportVersionUtils.getPreviousVersion(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP); final BytesStreamOutput out = new BytesStreamOutput(); out.setTransportVersion(oldVersion); diff --git a/server/src/test/java/org/elasticsearch/cluster/serialization/ClusterSerializationTests.java b/server/src/test/java/org/elasticsearch/cluster/serialization/ClusterSerializationTests.java index ae1357a4bca2c..d7b467c2b9b3e 100644 --- a/server/src/test/java/org/elasticsearch/cluster/serialization/ClusterSerializationTests.java +++ b/server/src/test/java/org/elasticsearch/cluster/serialization/ClusterSerializationTests.java @@ -10,7 +10,6 @@ package org.elasticsearch.cluster.serialization; import org.elasticsearch.TransportVersion; -import org.elasticsearch.TransportVersions; import org.elasticsearch.action.ActionListener; import org.elasticsearch.cluster.AbstractNamedDiffable; import org.elasticsearch.cluster.ClusterModule; @@ -59,6 +58,10 @@ public class ClusterSerializationTests extends ESAllocationTestCase { + private static final TransportVersion PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP = TransportVersion.fromName( + "project_id_in_snapshots_deletions_and_repo_cleanup" + ); + public void testClusterStateSerialization() throws Exception { IndexLongFieldRange eventIngestedRangeInput = randomFrom( IndexLongFieldRange.UNKNOWN, @@ -184,7 +187,7 @@ public void testSnapshotDeletionsInProgressSerialization() throws Exception { SnapshotDeletionsInProgress.of( List.of( new SnapshotDeletionsInProgress.Entry( - version.onOrAfter(TransportVersions.PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) + version.supports(PROJECT_ID_IN_SNAPSHOTS_DELETIONS_AND_REPO_CLEANUP) ? randomProjectIdOrDefault() : ProjectId.DEFAULT, "repo1", diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/authc/Authentication.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/authc/Authentication.java index 20a02139aa17e..1cb7422993d06 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/authc/Authentication.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/authc/Authentication.java @@ -118,6 +118,11 @@ public final class Authentication implements ToXContentObject { public static final TransportVersion VERSION_API_KEY_ROLES_AS_BYTES = TransportVersions.V_7_9_0; public static final TransportVersion VERSION_REALM_DOMAINS = TransportVersions.V_8_2_0; public static final TransportVersion VERSION_METADATA_BEYOND_GENERIC_MAP = TransportVersions.V_8_8_0; + + private static final TransportVersion SECURITY_CLOUD_API_KEY_REALM_AND_TYPE = TransportVersion.fromName( + "security_cloud_api_key_realm_and_type" + ); + private final AuthenticationType type; private final Subject authenticatingSubject; private final Subject effectiveSubject; @@ -269,10 +274,10 @@ public Authentication maybeRewriteForOlderVersion(TransportVersion olderVersion) + "]" ); } - if (isCloudApiKey() && olderVersion.before(TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE)) { + if (isCloudApiKey() && olderVersion.supports(SECURITY_CLOUD_API_KEY_REALM_AND_TYPE) == false) { throw new IllegalArgumentException( "versions of Elasticsearch before [" - + TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + + SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + "] can't handle cloud API key authentication and attempted to rewrite for [" + olderVersion.toReleaseVersion() + "]" @@ -650,10 +655,10 @@ private static void doWriteTo(Subject effectiveSubject, Subject authenticatingSu ); } if (effectiveSubject.getType() == Subject.Type.CLOUD_API_KEY - && out.getTransportVersion().before(TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE)) { + && out.getTransportVersion().supports(SECURITY_CLOUD_API_KEY_REALM_AND_TYPE) == false) { throw new IllegalArgumentException( "versions of Elasticsearch before [" - + TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + + SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + "] can't handle cloud API key authentication and attempted to send to [" + out.getTransportVersion().toReleaseVersion() + "]" diff --git a/x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/security/authc/AuthenticationSerializationTests.java b/x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/security/authc/AuthenticationSerializationTests.java index 095a7ed6c59f9..ec41fbf5caeb8 100644 --- a/x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/security/authc/AuthenticationSerializationTests.java +++ b/x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/security/authc/AuthenticationSerializationTests.java @@ -36,6 +36,10 @@ public class AuthenticationSerializationTests extends ESTestCase { + private static final TransportVersion SECURITY_CLOUD_API_KEY_REALM_AND_TYPE = TransportVersion.fromName( + "security_cloud_api_key_realm_and_type" + ); + public void testWriteToAndReadFrom() throws Exception { User user = new User(randomAlphaOfLengthBetween(4, 30), generateRandomStringArray(20, 30, false)); BytesStreamOutput output = new BytesStreamOutput(); @@ -142,7 +146,7 @@ public void testWriteToWithCloudApiKeyThrowsOnUnsupportedVersion() { final TransportVersion version = TransportVersionUtils.randomVersionBetween( random(), TransportVersions.V_8_0_0, - TransportVersionUtils.getPreviousVersion(TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE) + TransportVersionUtils.getPreviousVersion(SECURITY_CLOUD_API_KEY_REALM_AND_TYPE) ); out.setTransportVersion(version); @@ -151,7 +155,7 @@ public void testWriteToWithCloudApiKeyThrowsOnUnsupportedVersion() { ex.getMessage(), containsString( "versions of Elasticsearch before [" - + TransportVersions.SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + + SECURITY_CLOUD_API_KEY_REALM_AND_TYPE.toReleaseVersion() + "] can't handle cloud API key authentication and attempted to send to [" + out.getTransportVersion().toReleaseVersion() + "]" diff --git a/x-pack/plugin/identity-provider/src/test/java/org/elasticsearch/xpack/idp/saml/sp/SamlServiceProviderDocumentTests.java b/x-pack/plugin/identity-provider/src/test/java/org/elasticsearch/xpack/idp/saml/sp/SamlServiceProviderDocumentTests.java index 90626f60a3250..a7e9ca438b33c 100644 --- a/x-pack/plugin/identity-provider/src/test/java/org/elasticsearch/xpack/idp/saml/sp/SamlServiceProviderDocumentTests.java +++ b/x-pack/plugin/identity-provider/src/test/java/org/elasticsearch/xpack/idp/saml/sp/SamlServiceProviderDocumentTests.java @@ -46,6 +46,8 @@ public class SamlServiceProviderDocumentTests extends IdpSamlTestCase { ); private static final TransportVersion IDP_CUSTOM_SAML_ATTRIBUTES_ALLOW_LIST_PATCH = IDP_CUSTOM_SAML_ATTRIBUTES_ALLOW_LIST .nextPatchVersion(); + private static final TransportVersion STORED_SCRIPT_CONTENT_LENGTH = TransportVersion.fromName("stored_script_content_length"); + private static final TransportVersion STORED_SCRIPT_CONTENT_LENGTH_PATCH = STORED_SCRIPT_CONTENT_LENGTH.nextPatchVersion(); public void testValidationFailuresForMissingFields() throws Exception { final SamlServiceProviderDocument doc = new SamlServiceProviderDocument(); @@ -102,7 +104,7 @@ public void testSerializationBeforeExtensionAttributes() throws Exception { final TransportVersion version = randomBoolean() ? TransportVersionUtils.randomVersionBetween( random(), - TransportVersions.STORED_SCRIPT_CONTENT_LENGTH_90, + STORED_SCRIPT_CONTENT_LENGTH_PATCH, TransportVersionUtils.getPreviousVersion(IDP_CUSTOM_SAML_ATTRIBUTES_ALLOW_LIST) ) : TransportVersionUtils.randomVersionBetween(