diff --git a/server/src/main/java/org/elasticsearch/search/CanMatchShardResponse.java b/server/src/main/java/org/elasticsearch/search/CanMatchShardResponse.java index 0a9c98e0c9013..d432a5b4f89d9 100644 --- a/server/src/main/java/org/elasticsearch/search/CanMatchShardResponse.java +++ b/server/src/main/java/org/elasticsearch/search/CanMatchShardResponse.java @@ -8,7 +8,7 @@ package org.elasticsearch.search; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.sort.MinAndMax; @@ -25,7 +25,7 @@ public final class CanMatchShardResponse extends SearchPhaseResult { public CanMatchShardResponse(StreamInput in) throws IOException { super(in); this.canMatch = in.readBoolean(); - if (in.getVersion().onOrAfter(Version.V_7_6_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { estimatedMinAndMax = in.readOptionalWriteable(MinAndMax::new); } else { estimatedMinAndMax = null; @@ -40,7 +40,7 @@ public CanMatchShardResponse(boolean canMatch, MinAndMax estimatedMinAndMax) @Override public void writeTo(StreamOutput out) throws IOException { out.writeBoolean(canMatch); - if (out.getVersion().onOrAfter(Version.V_7_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { out.writeOptionalWriteable(estimatedMinAndMax); } } diff --git a/server/src/main/java/org/elasticsearch/search/DocValueFormat.java b/server/src/main/java/org/elasticsearch/search/DocValueFormat.java index 8a4541ee0aa71..9f508bf68420e 100644 --- a/server/src/main/java/org/elasticsearch/search/DocValueFormat.java +++ b/server/src/main/java/org/elasticsearch/search/DocValueFormat.java @@ -10,7 +10,7 @@ import org.apache.lucene.document.InetAddressPoint; import org.apache.lucene.util.BytesRef; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.bytes.BytesArray; import org.elasticsearch.common.io.stream.NamedWriteable; import org.elasticsearch.common.io.stream.StreamInput; @@ -241,14 +241,14 @@ public DateTime(StreamInput in) throws IOException { this.formatter = DateFormatter.forPattern(formatterPattern).withZone(this.timeZone); this.parser = formatter.toDateMathParser(); this.resolution = DateFieldMapper.Resolution.ofOrdinal(in.readVInt()); - if (in.getVersion().onOrAfter(Version.V_7_7_0) && in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0) && in.getTransportVersion().before(TransportVersion.V_8_0_0)) { /* when deserialising from 7.7+ nodes expect a flag indicating if a pattern is of joda style This is only used to support joda style indices in 7.x, in 8 we no longer support this. All indices in 8 should use java style pattern. Hence we can ignore this flag. */ in.readBoolean(); } - if (in.getVersion().onOrAfter(Version.V_7_13_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_13_0)) { this.formatSortValues = in.readBoolean(); } else { this.formatSortValues = false; @@ -265,14 +265,15 @@ public void writeTo(StreamOutput out) throws IOException { out.writeString(formatter.pattern()); out.writeString(timeZone.getId()); out.writeVInt(resolution.ordinal()); - if (out.getVersion().onOrAfter(Version.V_7_7_0) && out.getVersion().before(Version.V_8_0_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0) + && out.getTransportVersion().before(TransportVersion.V_8_0_0)) { /* when serializing to 7.7+ send out a flag indicating if a pattern is of joda style This is only used to support joda style indices in 7.x, in 8 we no longer support this. All indices in 8 should use java style pattern. Hence this flag is always false. */ out.writeBoolean(false); } - if (out.getVersion().onOrAfter(Version.V_7_13_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_13_0)) { out.writeBoolean(formatSortValues); } } diff --git a/server/src/main/java/org/elasticsearch/search/SearchHit.java b/server/src/main/java/org/elasticsearch/search/SearchHit.java index e9fd1ffd66d5c..3e3f072eec5e4 100644 --- a/server/src/main/java/org/elasticsearch/search/SearchHit.java +++ b/server/src/main/java/org/elasticsearch/search/SearchHit.java @@ -10,6 +10,7 @@ import org.apache.lucene.search.Explanation; import org.elasticsearch.ElasticsearchParseException; +import org.elasticsearch.TransportVersion; import org.elasticsearch.Version; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.Strings; @@ -134,7 +135,7 @@ public SearchHit(StreamInput in) throws IOException { docId = -1; score = in.readFloat(); id = in.readOptionalText(); - if (in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_0_0)) { in.readOptionalText(); } nestedIdentity = in.readOptionalWriteable(NestedIdentity::new); @@ -148,7 +149,7 @@ public SearchHit(StreamInput in) throws IOException { if (in.readBoolean()) { explanation = readExplanation(in); } - if (in.getVersion().onOrAfter(Version.V_7_8_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_8_0)) { documentFields.putAll(in.readMap(StreamInput::readString, DocumentField::new)); metaFields.putAll(in.readMap(StreamInput::readString, DocumentField::new)); } else { diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/composite/CompositeValuesSourceBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/composite/CompositeValuesSourceBuilder.java index 980fa1ca45517..49c29bf722a9c 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/composite/CompositeValuesSourceBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/composite/CompositeValuesSourceBuilder.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.aggregations.bucket.composite; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -55,7 +55,7 @@ public abstract class CompositeValuesSourceBuilder new InternalBucket(input, sourceNames, formats, reverseMuls, missingOrders)); this.afterKey = in.readOptionalWriteable(CompositeKey::new); - this.earlyTerminated = in.getVersion().onOrAfter(Version.V_7_6_0) ? in.readBoolean() : false; + this.earlyTerminated = in.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0) ? in.readBoolean() : false; } @Override @@ -99,12 +99,12 @@ protected void doWriteTo(StreamOutput out) throws IOException { out.writeNamedWriteable(format); } out.writeIntArray(reverseMuls); - if (out.getVersion().onOrAfter(Version.V_7_16_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { out.writeArray((o, order) -> order.writeTo(o), missingOrders); } out.writeList(buckets); out.writeOptionalWriteable(afterKey); - if (out.getVersion().onOrAfter(Version.V_7_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { out.writeBoolean(earlyTerminated); } } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/geogrid/GeoGridAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/geogrid/GeoGridAggregationBuilder.java index 0d5f708d38752..5adb8bbebd471 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/geogrid/GeoGridAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/geogrid/GeoGridAggregationBuilder.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.aggregations.bucket.geogrid; import org.elasticsearch.ElasticsearchException; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.geo.GeoBoundingBox; import org.elasticsearch.common.geo.GeoPoint; import org.elasticsearch.common.io.stream.StreamInput; @@ -91,7 +91,7 @@ public GeoGridAggregationBuilder(StreamInput in) throws IOException { precision = in.readVInt(); requiredSize = in.readVInt(); shardSize = in.readVInt(); - if (in.getVersion().onOrAfter(Version.V_7_6_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { geoBoundingBox = new GeoBoundingBox(in); } } @@ -111,7 +111,7 @@ protected void innerWriteTo(StreamOutput out) throws IOException { out.writeVInt(precision); out.writeVInt(requiredSize); out.writeVInt(shardSize); - if (out.getVersion().onOrAfter(Version.V_7_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { geoBoundingBox.writeTo(out); } } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/DateHistogramAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/DateHistogramAggregationBuilder.java index 187451139564f..2c1537e17f672 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/DateHistogramAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/DateHistogramAggregationBuilder.java @@ -9,7 +9,6 @@ package org.elasticsearch.search.aggregations.bucket.histogram; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.Rounding; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -157,7 +156,7 @@ public DateHistogramAggregationBuilder(StreamInput in) throws IOException { dateHistogramInterval = new DateIntervalWrapper(in); offset = in.readLong(); extendedBounds = in.readOptionalWriteable(LongBounds::new); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { hardBounds = in.readOptionalWriteable(LongBounds::new); } } @@ -180,7 +179,7 @@ protected void innerWriteTo(StreamOutput out) throws IOException { dateHistogramInterval.writeTo(out); out.writeLong(offset); out.writeOptionalWriteable(extendedBounds); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeOptionalWriteable(hardBounds); } } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/HistogramAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/HistogramAggregationBuilder.java index 75684a6841baf..6753e8151a853 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/HistogramAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/histogram/HistogramAggregationBuilder.java @@ -146,7 +146,7 @@ public HistogramAggregationBuilder(StreamInput in) throws IOException { minDocCount = in.readVLong(); interval = in.readDouble(); offset = in.readDouble(); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { extendedBounds = in.readOptionalWriteable(DoubleBounds::new); hardBounds = in.readOptionalWriteable(DoubleBounds::new); } else { diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/missing/MissingAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/missing/MissingAggregationBuilder.java index f1099d09c737c..c198ed4d038f6 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/missing/MissingAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/missing/MissingAggregationBuilder.java @@ -9,7 +9,6 @@ package org.elasticsearch.search.aggregations.bucket.missing; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.aggregations.AggregationBuilder; @@ -82,7 +81,7 @@ protected void innerWriteTo(StreamOutput out) { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalBinaryRange.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalBinaryRange.java index 48de2424198fc..88777f8a29286 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalBinaryRange.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalBinaryRange.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.aggregations.bucket.range; import org.apache.lucene.util.BytesRef; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.DocValueFormat; @@ -72,8 +72,8 @@ private static String generateKey(BytesRef from, BytesRef to, DocValueFormat for private static Bucket createFromStream(StreamInput in, DocValueFormat format, boolean keyed) throws IOException { // NOTE: the key is required in version == 8.0.0 and version <= 7.17.0, // while it is optional for all subsequent versions. - String key = in.getVersion().equals(Version.V_8_0_0) ? in.readString() - : in.getVersion().onOrAfter(Version.V_7_17_1) ? in.readOptionalString() + String key = in.getTransportVersion().equals(TransportVersion.V_8_0_0) ? in.readString() + : in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_1) ? in.readOptionalString() : in.readString(); BytesRef from = in.readBoolean() ? in.readBytesRef() : null; BytesRef to = in.readBoolean() ? in.readBytesRef() : null; @@ -85,9 +85,9 @@ private static Bucket createFromStream(StreamInput in, DocValueFormat format, bo @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getVersion().equals(Version.V_8_0_0)) { + if (out.getTransportVersion().equals(TransportVersion.V_8_0_0)) { out.writeString(key == null ? generateKey(from, to, format) : key); - } else if (out.getVersion().onOrAfter(Version.V_7_17_1)) { + } else if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_17_1)) { out.writeOptionalString(key); } else { out.writeString(key == null ? generateKey(from, to, format) : key); diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalRange.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalRange.java index 8f539348d5a69..f821aa3440303 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalRange.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalRange.java @@ -7,7 +7,7 @@ */ package org.elasticsearch.search.aggregations.bucket.range; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.DocValueFormat; @@ -160,19 +160,19 @@ private static String generateKey(double from, double to, DocValueFormat format) public void writeTo(StreamOutput out) throws IOException { // NOTE: the key is required in version == 8.0.0 and version <= 7.17.0, // while it is optional for all subsequent versions. - if (out.getVersion().equals(Version.V_8_0_0)) { + if (out.getTransportVersion().equals(TransportVersion.V_8_0_0)) { out.writeString(key == null ? generateKey(from, to, format) : key); - } else if (out.getVersion().onOrAfter(Version.V_7_17_1)) { + } else if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_17_1)) { out.writeOptionalString(key); } else { out.writeString(key == null ? generateKey(from, to, format) : key); } out.writeDouble(from); - if (out.getVersion().onOrAfter(Version.V_7_17_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0)) { out.writeOptionalDouble(from); } out.writeDouble(to); - if (out.getVersion().onOrAfter(Version.V_7_17_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0)) { out.writeOptionalDouble(to); } out.writeVLong(docCount); @@ -270,11 +270,11 @@ public InternalRange(StreamInput in) throws IOException { for (int i = 0; i < size; i++) { // NOTE: the key is required in version == 8.0.0 and version <= 7.17.0, // while it is optional for all subsequent versions. - final String key = in.getVersion().equals(Version.V_8_0_0) ? in.readString() - : in.getVersion().onOrAfter(Version.V_7_17_1) ? in.readOptionalString() + final String key = in.getTransportVersion().equals(TransportVersion.V_8_0_0) ? in.readString() + : in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_1) ? in.readOptionalString() : in.readString(); double from = in.readDouble(); - if (in.getVersion().onOrAfter(Version.V_7_17_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0)) { final Double originalFrom = in.readOptionalDouble(); if (originalFrom != null) { from = originalFrom; @@ -283,7 +283,7 @@ public InternalRange(StreamInput in) throws IOException { } } double to = in.readDouble(); - if (in.getVersion().onOrAfter(Version.V_7_17_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0)) { final Double originalTo = in.readOptionalDouble(); if (originalTo != null) { to = originalTo; diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java index 377fc15302fc2..55616a4de92ec 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java @@ -9,7 +9,7 @@ import org.apache.lucene.search.ScoreMode; import org.apache.lucene.search.ScorerSupplier; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -174,8 +174,8 @@ public Range(StreamInput in) throws IOException { toAsStr = in.readOptionalString(); from = in.readDouble(); to = in.readDouble(); - originalFrom = in.getVersion().onOrAfter(Version.V_7_17_0) ? in.readOptionalDouble() : Double.valueOf(from); - originalTo = in.getVersion().onOrAfter(Version.V_7_17_0) ? in.readOptionalDouble() : Double.valueOf(to); + originalFrom = in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0) ? in.readOptionalDouble() : Double.valueOf(from); + originalTo = in.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0) ? in.readOptionalDouble() : Double.valueOf(to); } @Override @@ -185,7 +185,7 @@ public void writeTo(StreamOutput out) throws IOException { out.writeOptionalString(toAsStr); out.writeDouble(from); out.writeDouble(to); - if (out.getVersion().onOrAfter(Version.V_7_17_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_17_0)) { out.writeOptionalDouble(originalFrom); out.writeOptionalDouble(originalTo); } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/IncludeExclude.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/IncludeExclude.java index d1f67533bf4aa..26468dc8fc54a 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/IncludeExclude.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/IncludeExclude.java @@ -21,7 +21,7 @@ import org.apache.lucene.util.automaton.Operations; import org.apache.lucene.util.hppc.BitMixer; import org.elasticsearch.ElasticsearchParseException; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -387,7 +387,7 @@ public IncludeExclude(StreamInput in) throws IOException { include = includeString == null ? null : new RegExp(includeString); String excludeString = in.readOptionalString(); exclude = excludeString == null ? null : new RegExp(excludeString); - if (in.getVersion().before(Version.V_7_11_0)) { + if (in.getTransportVersion().before(TransportVersion.V_7_11_0)) { incZeroBasedPartition = 0; incNumPartitions = 0; includeValues = null; @@ -427,7 +427,7 @@ public void writeTo(StreamOutput out) throws IOException { if (regexBased) { out.writeOptionalString(include == null ? null : include.getOriginalString()); out.writeOptionalString(exclude == null ? null : exclude.getOriginalString()); - if (out.getVersion().before(Version.V_7_11_0)) { + if (out.getTransportVersion().before(TransportVersion.V_7_11_0)) { return; } } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalMappedTerms.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalMappedTerms.java index 445ee82d982d8..fb3b262e5f0b2 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalMappedTerms.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalMappedTerms.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.aggregations.bucket.terms; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.DocValueFormat; @@ -63,7 +63,7 @@ protected InternalMappedTerms( */ protected InternalMappedTerms(StreamInput in, Bucket.Reader bucketReader) throws IOException { super(in); - if (in.getVersion().onOrAfter(Version.V_7_15_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_15_0)) { if (in.readBoolean()) { docCountError = in.readZLong(); } else { @@ -81,7 +81,7 @@ protected InternalMappedTerms(StreamInput in, Bucket.Reader bucketReader) thr @Override protected final void writeTermTypeInfoTo(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_7_15_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_15_0)) { if (docCountError != null) { out.writeBoolean(true); out.writeZLong(docCountError); diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalTerms.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalTerms.java index c29a59d1a40d2..318f8c16893b6 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalTerms.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/InternalTerms.java @@ -7,7 +7,7 @@ */ package org.elasticsearch.search.aggregations.bucket.terms; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.DocValueFormat; @@ -197,7 +197,7 @@ protected InternalTerms( protected InternalTerms(StreamInput in) throws IOException { super(in); reduceOrder = InternalOrder.Streams.readOrder(in); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { order = InternalOrder.Streams.readOrder(in); } else { order = reduceOrder; @@ -208,7 +208,7 @@ protected InternalTerms(StreamInput in) throws IOException { @Override protected final void doWriteTo(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { reduceOrder.writeTo(out); } order.writeTo(out); diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/RareTermsAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/RareTermsAggregationBuilder.java index 6c618c1db704d..66e91ef01e0ab 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/RareTermsAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/RareTermsAggregationBuilder.java @@ -8,7 +8,6 @@ package org.elasticsearch.search.aggregations.bucket.terms; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.aggregations.AggregationBuilder; @@ -111,7 +110,7 @@ public RareTermsAggregationBuilder(StreamInput in) throws IOException { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/SignificantTermsAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/SignificantTermsAggregationBuilder.java index 285aedcdc1264..493730df35f42 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/SignificantTermsAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/SignificantTermsAggregationBuilder.java @@ -8,7 +8,6 @@ package org.elasticsearch.search.aggregations.bucket.terms; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.index.query.QueryBuilder; @@ -173,7 +172,7 @@ protected void innerWriteTo(StreamOutput out) throws IOException { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/TermsAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/TermsAggregationBuilder.java index 13a7e4669a46b..52ea574cdb533 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/TermsAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/bucket/terms/TermsAggregationBuilder.java @@ -8,7 +8,6 @@ package org.elasticsearch.search.aggregations.bucket.terms; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.xcontent.LoggingDeprecationHandler; @@ -162,7 +161,7 @@ public TermsAggregationBuilder(StreamInput in) throws IOException { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractInternalHDRPercentiles.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractInternalHDRPercentiles.java index c17414e481635..367b259c2d71d 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractInternalHDRPercentiles.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractInternalHDRPercentiles.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.aggregations.metrics; import org.HdrHistogram.DoubleHistogram; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.DocValueFormat; @@ -54,7 +54,7 @@ abstract class AbstractInternalHDRPercentiles extends InternalNumericMetricsAggr protected AbstractInternalHDRPercentiles(StreamInput in) throws IOException { super(in); keys = in.readDoubleArray(); - if (in.getVersion().onOrAfter(Version.V_8_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { if (in.readBoolean()) { state = decode(in); } else { @@ -83,7 +83,7 @@ private DoubleHistogram decode(StreamInput in) throws IOException { protected void doWriteTo(StreamOutput out) throws IOException { out.writeNamedWriteable(format); out.writeDoubleArray(keys); - if (out.getVersion().onOrAfter(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { if (this.state != null) { out.writeBoolean(true); encode(this.state, out); diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractPercentilesAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractPercentilesAggregationBuilder.java index 407b7b61d3480..55976bb41825c 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractPercentilesAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/AbstractPercentilesAggregationBuilder.java @@ -7,7 +7,7 @@ */ package org.elasticsearch.search.aggregations.metrics; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.TriFunction; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -146,7 +146,7 @@ public static > ConstructingO this.valuesField = valuesField; values = in.readDoubleArray(); keyed = in.readBoolean(); - if (in.getVersion().onOrAfter(Version.V_7_8_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_8_0)) { percentilesConfig = (PercentilesConfig) in.readOptionalWriteable((Reader) PercentilesConfig::fromStream); } else { int numberOfSignificantValueDigits = in.readVInt(); @@ -165,7 +165,7 @@ public boolean supportsSampling() { protected void innerWriteTo(StreamOutput out) throws IOException { out.writeDoubleArray(values); out.writeBoolean(keyed); - if (out.getVersion().onOrAfter(Version.V_7_8_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_8_0)) { out.writeOptionalWriteable(percentilesConfig); } else { // Legacy method serialized both SigFigs and compression, even though we only need one. So we need diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/CardinalityAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/CardinalityAggregationBuilder.java index 04dd2a39c11bd..7da9aafa59c80 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/CardinalityAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/CardinalityAggregationBuilder.java @@ -9,7 +9,6 @@ package org.elasticsearch.search.aggregations.metrics; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.aggregations.AggregationBuilder; @@ -86,7 +85,7 @@ public CardinalityAggregationBuilder(StreamInput in) throws IOException { if (in.readBoolean()) { precisionThreshold = in.readLong(); } - if (in.getVersion().onOrAfter(Version.V_8_4_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { executionHint = in.readOptionalString(); } } @@ -103,7 +102,7 @@ protected void innerWriteTo(StreamOutput out) throws IOException { if (hasPrecisionThreshold) { out.writeLong(precisionThreshold); } - if (out.getVersion().onOrAfter(Version.V_8_4_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { out.writeOptionalString(executionHint); } } @@ -114,7 +113,7 @@ public boolean supportsSampling() { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalGeoCentroid.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalGeoCentroid.java index be441c215b4fd..4987bfed72e6a 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalGeoCentroid.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalGeoCentroid.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.aggregations.metrics; import org.apache.lucene.geo.GeoEncodingUtils; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.geo.GeoPoint; import org.elasticsearch.common.geo.SpatialPoint; import org.elasticsearch.common.io.stream.StreamInput; @@ -60,7 +60,7 @@ public InternalGeoCentroid(StreamInput in) throws IOException { @Override protected GeoPoint centroidFromStream(StreamInput in) throws IOException { - if (in.getVersion().onOrAfter(Version.V_7_2_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_2_0)) { return new GeoPoint(in.readDouble(), in.readDouble()); } else { final long hash = in.readLong(); @@ -70,7 +70,7 @@ protected GeoPoint centroidFromStream(StreamInput in) throws IOException { @Override protected void centroidToStream(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_7_2_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_2_0)) { out.writeDouble(centroid.getY()); out.writeDouble(centroid.getX()); } else { diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalScriptedMetric.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalScriptedMetric.java index 40f30a4e09523..1cdbc057834f1 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalScriptedMetric.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/InternalScriptedMetric.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.aggregations.metrics; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.util.CollectionUtils; @@ -45,7 +45,7 @@ public class InternalScriptedMetric extends InternalAggregation implements Scrip public InternalScriptedMetric(StreamInput in) throws IOException { super(in); reduceScript = in.readOptionalWriteable(Script::new); - if (in.getVersion().before(Version.V_7_8_0)) { + if (in.getTransportVersion().before(TransportVersion.V_7_8_0)) { aggregations = singletonList(in.readGenericValue()); } else { aggregations = in.readList(StreamInput::readGenericValue); @@ -55,7 +55,7 @@ public InternalScriptedMetric(StreamInput in) throws IOException { @Override protected void doWriteTo(StreamOutput out) throws IOException { out.writeOptionalWriteable(reduceScript); - if (out.getVersion().before(Version.V_7_8_0)) { + if (out.getTransportVersion().before(TransportVersion.V_7_8_0)) { if (aggregations.size() > 1) { /* * If aggregations has more than one entry we're trying to diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/TopHitsAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/TopHitsAggregationBuilder.java index 1ff92e361a3ef..3772eec79871b 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/TopHitsAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/TopHitsAggregationBuilder.java @@ -9,7 +9,6 @@ package org.elasticsearch.search.aggregations.metrics; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; @@ -130,7 +129,7 @@ public TopHitsAggregationBuilder(StreamInput in) throws IOException { trackScores = in.readBoolean(); version = in.readBoolean(); seqNoAndPrimaryTerm = in.readBoolean(); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { if (in.readBoolean()) { fetchFields = in.readList(FieldAndFormat::new); } @@ -163,7 +162,7 @@ protected void doWriteTo(StreamOutput out) throws IOException { out.writeBoolean(trackScores); out.writeBoolean(version); out.writeBoolean(seqNoAndPrimaryTerm); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeBoolean(fetchFields != null); if (fetchFields != null) { out.writeList(fetchFields); diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/ValueCountAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/ValueCountAggregationBuilder.java index 74dd56b0e7650..465fe3880076d 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/metrics/ValueCountAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/metrics/ValueCountAggregationBuilder.java @@ -9,7 +9,6 @@ package org.elasticsearch.search.aggregations.metrics; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.aggregations.AggregationBuilder; @@ -87,7 +86,7 @@ protected void innerWriteTo(StreamOutput out) { } @Override - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return true; } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/support/MultiValuesSourceFieldConfig.java b/server/src/main/java/org/elasticsearch/search/aggregations/support/MultiValuesSourceFieldConfig.java index ff1949fb5fb7a..22d1cbe6864df 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/support/MultiValuesSourceFieldConfig.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/support/MultiValuesSourceFieldConfig.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.aggregations.support; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -161,7 +161,7 @@ protected MultiValuesSourceFieldConfig( } public MultiValuesSourceFieldConfig(StreamInput in) throws IOException { - if (in.getVersion().onOrAfter(Version.V_7_6_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { this.fieldName = in.readOptionalString(); } else { this.fieldName = in.readString(); @@ -169,19 +169,19 @@ public MultiValuesSourceFieldConfig(StreamInput in) throws IOException { this.missing = in.readGenericValue(); this.script = in.readOptionalWriteable(Script::new); this.timeZone = in.readOptionalZoneId(); - if (in.getVersion().onOrAfter(Version.V_7_8_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_8_0)) { this.filter = in.readOptionalNamedWriteable(QueryBuilder.class); } else { this.filter = null; } - if (in.getVersion().onOrAfter(Version.V_7_12_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { this.userValueTypeHint = in.readOptionalWriteable(ValueType::readFromStream); this.format = in.readOptionalString(); } else { this.userValueTypeHint = null; this.format = null; } - if (in.getVersion().onOrAfter(Version.V_8_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { this.includeExclude = in.readOptionalWriteable(IncludeExclude::new); } else { this.includeExclude = null; @@ -222,7 +222,7 @@ public IncludeExclude getIncludeExclude() { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_7_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_6_0)) { out.writeOptionalString(fieldName); } else { out.writeString(fieldName); @@ -230,14 +230,14 @@ public void writeTo(StreamOutput out) throws IOException { out.writeGenericValue(missing); out.writeOptionalWriteable(script); out.writeOptionalZoneId(timeZone); - if (out.getVersion().onOrAfter(Version.V_7_8_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_8_0)) { out.writeOptionalNamedWriteable(filter); } - if (out.getVersion().onOrAfter(Version.V_7_12_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { out.writeOptionalWriteable(userValueTypeHint); out.writeOptionalString(format); } - if (out.getVersion().onOrAfter(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { out.writeOptionalWriteable(includeExclude); } } diff --git a/server/src/main/java/org/elasticsearch/search/aggregations/support/ValuesSourceAggregationBuilder.java b/server/src/main/java/org/elasticsearch/search/aggregations/support/ValuesSourceAggregationBuilder.java index 2a63e8cda13ea..e953a4c85e779 100644 --- a/server/src/main/java/org/elasticsearch/search/aggregations/support/ValuesSourceAggregationBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/aggregations/support/ValuesSourceAggregationBuilder.java @@ -7,7 +7,7 @@ */ package org.elasticsearch.search.aggregations.support; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.script.Script; @@ -217,7 +217,7 @@ protected ValuesSourceAggregationBuilder( */ protected ValuesSourceAggregationBuilder(StreamInput in) throws IOException { super(in); - if (serializeTargetValueType(in.getVersion())) { + if (serializeTargetValueType(in.getTransportVersion())) { ValueType valueType = in.readOptionalWriteable(ValueType::readFromStream); assert valueType == null; } @@ -242,7 +242,7 @@ private void read(StreamInput in) throws IOException { @Override protected final void doWriteTo(StreamOutput out) throws IOException { - if (serializeTargetValueType(out.getVersion())) { + if (serializeTargetValueType(out.getTransportVersion())) { // TODO: deprecate this so we don't need to carry around a useless null in the wire format out.writeOptionalWriteable(null); } @@ -275,7 +275,7 @@ protected final void doWriteTo(StreamOutput out) throws IOException { * * @param version For backwards compatibility, subclasses can change behavior based on the version */ - protected boolean serializeTargetValueType(Version version) { + protected boolean serializeTargetValueType(TransportVersion version) { return false; } diff --git a/server/src/main/java/org/elasticsearch/search/builder/SearchSourceBuilder.java b/server/src/main/java/org/elasticsearch/search/builder/SearchSourceBuilder.java index 35950d23aba9a..32c702cd1a77f 100644 --- a/server/src/main/java/org/elasticsearch/search/builder/SearchSourceBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/builder/SearchSourceBuilder.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.builder; import org.elasticsearch.ElasticsearchException; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; @@ -240,17 +240,17 @@ public SearchSourceBuilder(StreamInput in) throws IOException { sliceBuilder = in.readOptionalWriteable(SliceBuilder::new); collapse = in.readOptionalWriteable(CollapseBuilder::new); trackTotalHitsUpTo = in.readOptionalInt(); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { if (in.readBoolean()) { fetchFields = in.readList(FieldAndFormat::new); } pointInTimeBuilder = in.readOptionalWriteable(PointInTimeBuilder::new); } - if (in.getVersion().onOrAfter(Version.V_7_11_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0)) { runtimeMappings = in.readMap(); } - if (in.getVersion().onOrAfter(Version.V_8_4_0)) { - if (in.getVersion().before(Version.V_8_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_7_0)) { KnnSearchBuilder searchBuilder = in.readOptionalWriteable(KnnSearchBuilder::new); knnSearch = searchBuilder != null ? List.of(searchBuilder) : List.of(); } else { @@ -308,28 +308,28 @@ public void writeTo(StreamOutput out) throws IOException { out.writeOptionalWriteable(sliceBuilder); out.writeOptionalWriteable(collapse); out.writeOptionalInt(trackTotalHitsUpTo); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeBoolean(fetchFields != null); if (fetchFields != null) { out.writeList(fetchFields); } out.writeOptionalWriteable(pointInTimeBuilder); } - if (out.getVersion().onOrAfter(Version.V_7_11_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0)) { out.writeGenericMap(runtimeMappings); } else { if (false == runtimeMappings.isEmpty()) { throw new IllegalArgumentException( - "Versions before 7.11.0 don't support [runtime_mappings] and search was sent to [" + out.getVersion() + "]" + "Versions before 7110099 don't support [runtime_mappings] and search was sent to [" + out.getTransportVersion() + "]" ); } } - if (out.getVersion().onOrAfter(Version.V_8_4_0)) { - if (out.getVersion().before(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { + if (out.getTransportVersion().before(TransportVersion.V_8_7_0)) { if (knnSearch.size() > 1) { throw new IllegalArgumentException( - "Versions before 8.7.0 don't support multiple [knn] search clauses and search was sent to [" - + out.getVersion() + "Versions before 8070099 don't support multiple [knn] search clauses and search was sent to [" + + out.getTransportVersion() + "]" ); } diff --git a/server/src/main/java/org/elasticsearch/search/dfs/DfsSearchResult.java b/server/src/main/java/org/elasticsearch/search/dfs/DfsSearchResult.java index 84925900c111c..9c12bf3a4e497 100644 --- a/server/src/main/java/org/elasticsearch/search/dfs/DfsSearchResult.java +++ b/server/src/main/java/org/elasticsearch/search/dfs/DfsSearchResult.java @@ -12,7 +12,7 @@ import org.apache.lucene.search.CollectionStatistics; import org.apache.lucene.search.TermStatistics; import org.apache.lucene.util.BytesRef; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.SearchPhaseResult; @@ -53,18 +53,18 @@ public DfsSearchResult(StreamInput in) throws IOException { fieldStatistics = readFieldStats(in); maxDoc = in.readVInt(); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { setShardSearchRequest(in.readOptionalWriteable(ShardSearchRequest::new)); } - if (in.getVersion().onOrAfter(Version.V_8_4_0)) { - if (in.getVersion().onOrAfter(Version.V_8_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { knnResults = in.readOptionalList(DfsKnnResults::new); } else { DfsKnnResults results = in.readOptionalWriteable(DfsKnnResults::new); knnResults = results != null ? List.of(results) : List.of(); } } - if (in.getVersion().onOrAfter(Version.V_8_6_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_6_0)) { searchProfileDfsPhaseResult = in.readOptionalWriteable(SearchProfileDfsPhaseResult::new); } } @@ -135,24 +135,24 @@ public void writeTo(StreamOutput out) throws IOException { writeTermStats(out, termStatistics); writeFieldStats(out, fieldStatistics); out.writeVInt(maxDoc); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeOptionalWriteable(getShardSearchRequest()); } - if (out.getVersion().onOrAfter(Version.V_8_4_0)) { - if (out.getVersion().onOrAfter(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { out.writeOptionalCollection(knnResults); } else { if (knnResults != null && knnResults.size() > 1) { throw new IllegalArgumentException( - "Versions before 8.7.0 don't support multiple [knn] search clauses and search was sent to [" - + out.getVersion() - + "]" + "Cannot serialize multiple KNN results to nodes using previous transport version [" + + out.getTransportVersion() + + "], minimum required transport version is [8070099]" ); } out.writeOptionalWriteable(knnResults == null || knnResults.isEmpty() ? null : knnResults.get(0)); } } - if (out.getVersion().onOrAfter(Version.V_8_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_6_0)) { out.writeOptionalWriteable(searchProfileDfsPhaseResult); } } diff --git a/server/src/main/java/org/elasticsearch/search/fetch/FetchSearchResult.java b/server/src/main/java/org/elasticsearch/search/fetch/FetchSearchResult.java index 5798dd46354be..f7b51343c47df 100644 --- a/server/src/main/java/org/elasticsearch/search/fetch/FetchSearchResult.java +++ b/server/src/main/java/org/elasticsearch/search/fetch/FetchSearchResult.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.fetch; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.search.SearchHit; @@ -40,7 +40,7 @@ public FetchSearchResult(StreamInput in) throws IOException { super(in); contextId = new ShardSearchContextId(in); hits = new SearchHits(in); - if (in.getVersion().onOrAfter(Version.V_7_16_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { profileResult = in.readOptionalWriteable(ProfileResult::new); } else { profileResult = null; @@ -51,7 +51,7 @@ public FetchSearchResult(StreamInput in) throws IOException { public void writeTo(StreamOutput out) throws IOException { contextId.writeTo(out); hits.writeTo(out); - if (out.getVersion().onOrAfter(Version.V_7_16_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { out.writeOptionalWriteable(profileResult); } } diff --git a/server/src/main/java/org/elasticsearch/search/fetch/ShardFetchSearchRequest.java b/server/src/main/java/org/elasticsearch/search/fetch/ShardFetchSearchRequest.java index fff55b15ea97b..1cd6a5d712469 100644 --- a/server/src/main/java/org/elasticsearch/search/fetch/ShardFetchSearchRequest.java +++ b/server/src/main/java/org/elasticsearch/search/fetch/ShardFetchSearchRequest.java @@ -9,7 +9,7 @@ package org.elasticsearch.search.fetch; import org.apache.lucene.search.ScoreDoc; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.IndicesRequest; import org.elasticsearch.action.OriginalIndices; import org.elasticsearch.action.support.IndicesOptions; @@ -53,7 +53,7 @@ public ShardFetchSearchRequest( public ShardFetchSearchRequest(StreamInput in) throws IOException { super(in); originalIndices = OriginalIndices.readOriginalIndices(in); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { shardSearchRequest = in.readOptionalWriteable(ShardSearchRequest::new); rescoreDocIds = new RescoreDocIds(in); aggregatedDfs = in.readOptionalWriteable(AggregatedDfs::new); @@ -68,7 +68,7 @@ public ShardFetchSearchRequest(StreamInput in) throws IOException { public void writeTo(StreamOutput out) throws IOException { super.writeTo(out); OriginalIndices.writeOriginalIndices(originalIndices, out); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeOptionalWriteable(shardSearchRequest); rescoreDocIds.writeTo(out); out.writeOptionalWriteable(aggregatedDfs); diff --git a/server/src/main/java/org/elasticsearch/search/fetch/subphase/FieldAndFormat.java b/server/src/main/java/org/elasticsearch/search/fetch/subphase/FieldAndFormat.java index 8ae6262357fc6..3fb9d8a1930c1 100644 --- a/server/src/main/java/org/elasticsearch/search/fetch/subphase/FieldAndFormat.java +++ b/server/src/main/java/org/elasticsearch/search/fetch/subphase/FieldAndFormat.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.fetch.subphase; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -133,7 +133,7 @@ public FieldAndFormat(String field, @Nullable String format, @Nullable Boolean i public FieldAndFormat(StreamInput in) throws IOException { this.field = in.readString(); format = in.readOptionalString(); - if (in.getVersion().onOrAfter(Version.V_7_11_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0)) { this.includeUnmapped = in.readOptionalBoolean(); } else { this.includeUnmapped = null; @@ -144,7 +144,7 @@ public FieldAndFormat(StreamInput in) throws IOException { public void writeTo(StreamOutput out) throws IOException { out.writeString(field); out.writeOptionalString(format); - if (out.getVersion().onOrAfter(Version.V_7_11_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0)) { out.writeOptionalBoolean(this.includeUnmapped); } } diff --git a/server/src/main/java/org/elasticsearch/search/fetch/subphase/highlight/AbstractHighlighterBuilder.java b/server/src/main/java/org/elasticsearch/search/fetch/subphase/highlight/AbstractHighlighterBuilder.java index 3bddde70d6975..bbb93bc1d7df2 100644 --- a/server/src/main/java/org/elasticsearch/search/fetch/subphase/highlight/AbstractHighlighterBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/fetch/subphase/highlight/AbstractHighlighterBuilder.java @@ -10,7 +10,7 @@ import org.apache.lucene.search.highlight.SimpleFragmenter; import org.apache.lucene.search.highlight.SimpleSpanFragmenter; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; @@ -161,7 +161,7 @@ protected AbstractHighlighterBuilder(StreamInput in) throws IOException { options(in.readMap()); } requireFieldMatch(in.readOptionalBoolean()); - if (in.getVersion().onOrAfter(Version.V_7_12_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { maxAnalyzedOffset(in.readOptionalInt()); } } @@ -205,7 +205,7 @@ public final void writeTo(StreamOutput out) throws IOException { out.writeGenericMap(options); } out.writeOptionalBoolean(requireFieldMatch); - if (out.getVersion().onOrAfter(Version.V_7_12_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { out.writeOptionalInt(maxAnalyzedOffset); } doWriteTo(out); diff --git a/server/src/main/java/org/elasticsearch/search/internal/ShardSearchContextId.java b/server/src/main/java/org/elasticsearch/search/internal/ShardSearchContextId.java index 5513968f94a91..29dccd06605f5 100644 --- a/server/src/main/java/org/elasticsearch/search/internal/ShardSearchContextId.java +++ b/server/src/main/java/org/elasticsearch/search/internal/ShardSearchContextId.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.internal; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -34,12 +34,12 @@ public ShardSearchContextId(String sessionId, long id, String searcherId) { public ShardSearchContextId(StreamInput in) throws IOException { this.id = in.readLong(); - if (in.getVersion().onOrAfter(Version.V_7_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { this.sessionId = in.readString(); } else { this.sessionId = ""; } - if (in.getVersion().onOrAfter(Version.V_7_12_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { this.searcherId = in.readOptionalString(); } else { this.searcherId = null; @@ -49,10 +49,10 @@ public ShardSearchContextId(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { out.writeLong(id); - if (out.getVersion().onOrAfter(Version.V_7_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { out.writeString(sessionId); } - if (out.getVersion().onOrAfter(Version.V_7_12_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_12_0)) { out.writeOptionalString(searcherId); } } diff --git a/server/src/main/java/org/elasticsearch/search/internal/ShardSearchRequest.java b/server/src/main/java/org/elasticsearch/search/internal/ShardSearchRequest.java index 09ea70bc608a0..edfdd0141ad76 100644 --- a/server/src/main/java/org/elasticsearch/search/internal/ShardSearchRequest.java +++ b/server/src/main/java/org/elasticsearch/search/internal/ShardSearchRequest.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.internal; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.IndicesRequest; import org.elasticsearch.action.OriginalIndices; import org.elasticsearch.action.search.SearchRequest; @@ -88,7 +88,7 @@ public class ShardSearchRequest extends TransportRequest implements IndicesReque private final ShardSearchContextId readerId; private final TimeValue keepAlive; - private final Version channelVersion; + private final TransportVersion channelVersion; /** * Should this request force {@link SourceLoader.Synthetic synthetic source}? @@ -236,7 +236,7 @@ public ShardSearchRequest( this.readerId = readerId; this.keepAlive = keepAlive; assert keepAlive == null || readerId != null : "readerId: " + readerId + " keepAlive: " + keepAlive; - this.channelVersion = Version.CURRENT; + this.channelVersion = TransportVersion.CURRENT; this.waitForCheckpoint = waitForCheckpoint; this.waitForCheckpointsTimeout = waitForCheckpointsTimeout; this.forceSyntheticSource = forceSyntheticSource; @@ -270,11 +270,11 @@ public ShardSearchRequest(StreamInput in) throws IOException { super(in); shardId = new ShardId(in); searchType = SearchType.fromId(in.readByte()); - shardRequestIndex = in.getVersion().onOrAfter(Version.V_7_11_0) ? in.readVInt() : -1; + shardRequestIndex = in.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0) ? in.readVInt() : -1; numberOfShards = in.readVInt(); scroll = in.readOptionalWriteable(Scroll::new); source = in.readOptionalWriteable(SearchSourceBuilder::new); - if (in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_0_0)) { // types no longer relevant so ignore String[] types = in.readStringArray(); if (types.length > 0) { @@ -289,11 +289,11 @@ public ShardSearchRequest(StreamInput in) throws IOException { requestCache = in.readOptionalBoolean(); clusterAlias = in.readOptionalString(); allowPartialSearchResults = in.readBoolean(); - if (in.getVersion().before(Version.V_7_11_0)) { + if (in.getTransportVersion().before(TransportVersion.V_7_11_0)) { in.readStringArray(); in.readOptionalString(); } - if (in.getVersion().onOrAfter(Version.V_7_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { canReturnNullResponseIfMatchNoDocs = in.readBoolean(); bottomSortValues = in.readOptionalWriteable(SearchSortValuesAndFormats::new); readerId = in.readOptionalWriteable(ShardSearchContextId::new); @@ -305,15 +305,15 @@ public ShardSearchRequest(StreamInput in) throws IOException { keepAlive = null; } assert keepAlive == null || readerId != null : "readerId: " + readerId + " keepAlive: " + keepAlive; - channelVersion = Version.min(Version.readVersion(in), in.getVersion()); - if (in.getVersion().onOrAfter(Version.V_7_16_0)) { + channelVersion = TransportVersion.min(TransportVersion.readVersion(in), in.getTransportVersion()); + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { waitForCheckpoint = in.readLong(); waitForCheckpointsTimeout = in.readTimeValue(); } else { waitForCheckpoint = SequenceNumbers.UNASSIGNED_SEQ_NO; waitForCheckpointsTimeout = SearchService.NO_TIMEOUT; } - if (in.getVersion().onOrAfter(Version.V_8_4_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { forceSyntheticSource = in.readBoolean(); } else { /* @@ -337,14 +337,14 @@ protected final void innerWriteTo(StreamOutput out, boolean asKey) throws IOExce shardId.writeTo(out); out.writeByte(searchType.id()); if (asKey == false) { - if (out.getVersion().onOrAfter(Version.V_7_11_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_11_0)) { out.writeVInt(shardRequestIndex); } out.writeVInt(numberOfShards); } out.writeOptionalWriteable(scroll); out.writeOptionalWriteable(source); - if (out.getVersion().before(Version.V_8_0_0)) { + if (out.getTransportVersion().before(TransportVersion.V_8_0_0)) { // types not supported so send an empty array to previous versions out.writeStringArray(Strings.EMPTY_ARRAY); } @@ -356,32 +356,32 @@ protected final void innerWriteTo(StreamOutput out, boolean asKey) throws IOExce out.writeOptionalBoolean(requestCache); out.writeOptionalString(clusterAlias); out.writeBoolean(allowPartialSearchResults); - if (asKey == false && out.getVersion().before(Version.V_7_11_0)) { + if (asKey == false && out.getTransportVersion().before(TransportVersion.V_7_11_0)) { out.writeStringArray(Strings.EMPTY_ARRAY); out.writeOptionalString(null); } - if (asKey == false && out.getVersion().onOrAfter(Version.V_7_7_0)) { + if (asKey == false && out.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { out.writeBoolean(canReturnNullResponseIfMatchNoDocs); out.writeOptionalWriteable(bottomSortValues); out.writeOptionalWriteable(readerId); out.writeOptionalTimeValue(keepAlive); } - Version.writeVersion(channelVersion, out); - Version waitForCheckpointsVersion = Version.V_7_16_0; - if (out.getVersion().onOrAfter(waitForCheckpointsVersion)) { + TransportVersion.writeVersion(channelVersion, out); + TransportVersion waitForCheckpointsVersion = TransportVersion.V_7_16_0; + if (out.getTransportVersion().onOrAfter(waitForCheckpointsVersion)) { out.writeLong(waitForCheckpoint); out.writeTimeValue(waitForCheckpointsTimeout); } else if (waitForCheckpoint != SequenceNumbers.UNASSIGNED_SEQ_NO) { throw new IllegalArgumentException( "Remote node version [" - + out.getVersion() + + out.getTransportVersion() + " incompatible with " + "wait_for_checkpoints. All nodes must be version [" + waitForCheckpointsVersion + "] or greater." ); } - if (out.getVersion().onOrAfter(Version.V_8_4_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_4_0)) { out.writeBoolean(forceSyntheticSource); } else { if (forceSyntheticSource) { @@ -663,10 +663,10 @@ public final Map getRuntimeMappings() { /** * Returns the minimum version of the channel that the request has been passed. If the request never passes around, then the channel - * version is {@link Version#CURRENT}; otherwise, it's the minimum version of the coordinating node and data node (and the proxy node - * in case the request is sent to the proxy node of the remote cluster before reaching the data node). + * version is {@link TransportVersion#CURRENT}; otherwise, it's the minimum transport version of the coordinating node and data node + * (and the proxy node in case the request is sent to the proxy node of the remote cluster before reaching the data node). */ - public Version getChannelVersion() { + public TransportVersion getChannelVersion() { return channelVersion; } diff --git a/server/src/main/java/org/elasticsearch/search/profile/ProfileResult.java b/server/src/main/java/org/elasticsearch/search/profile/ProfileResult.java index 0ccc4b27f4137..0fb8c13b14c4e 100644 --- a/server/src/main/java/org/elasticsearch/search/profile/ProfileResult.java +++ b/server/src/main/java/org/elasticsearch/search/profile/ProfileResult.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.profile; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -75,7 +75,7 @@ public ProfileResult(StreamInput in) throws IOException { this.description = in.readString(); this.nodeTime = in.readLong(); breakdown = in.readMap(StreamInput::readString, StreamInput::readLong); - if (in.getVersion().onOrAfter(Version.V_7_9_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_9_0)) { debug = in.readMap(StreamInput::readString, StreamInput::readGenericValue); } else { debug = Map.of(); @@ -89,7 +89,7 @@ public void writeTo(StreamOutput out) throws IOException { out.writeString(description); out.writeLong(nodeTime); // not Vlong because can be negative out.writeMap(breakdown, StreamOutput::writeString, StreamOutput::writeLong); - if (out.getVersion().onOrAfter(Version.V_7_9_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_9_0)) { out.writeMap(debug, StreamOutput::writeString, StreamOutput::writeGenericValue); } out.writeList(children); diff --git a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileDfsPhaseResult.java b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileDfsPhaseResult.java index 349cc1d0cd831..4d3205f185a60 100644 --- a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileDfsPhaseResult.java +++ b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileDfsPhaseResult.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.profile; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -45,7 +45,7 @@ public SearchProfileDfsPhaseResult( public SearchProfileDfsPhaseResult(StreamInput in) throws IOException { dfsShardResult = in.readOptionalWriteable(ProfileResult::new); - if (in.getVersion().onOrAfter(Version.V_8_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { queryProfileShardResult = in.readOptionalList(QueryProfileShardResult::new); } else { QueryProfileShardResult singleResult = in.readOptionalWriteable(QueryProfileShardResult::new); @@ -56,7 +56,7 @@ public SearchProfileDfsPhaseResult(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { out.writeOptionalWriteable(dfsShardResult); - if (out.getVersion().onOrAfter(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { out.writeOptionalCollection(queryProfileShardResult); } else { out.writeOptionalWriteable(combineQueryProfileShardResults()); diff --git a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileQueryPhaseResult.java b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileQueryPhaseResult.java index caeac1a74e379..04855716fe30a 100644 --- a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileQueryPhaseResult.java +++ b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileQueryPhaseResult.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.profile; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.Writeable; @@ -42,7 +42,7 @@ public SearchProfileQueryPhaseResult( } public SearchProfileQueryPhaseResult(StreamInput in) throws IOException { - if (in.getVersion().onOrAfter(Version.V_8_6_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_8_6_0)) { searchProfileDfsPhaseResult = in.readOptionalWriteable(SearchProfileDfsPhaseResult::new); } int profileSize = in.readVInt(); @@ -57,7 +57,7 @@ public SearchProfileQueryPhaseResult(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_8_6_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_6_0)) { out.writeOptionalWriteable(searchProfileDfsPhaseResult); } out.writeVInt(queryProfileResults.size()); diff --git a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileResults.java b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileResults.java index 84d46af3036ac..40a251ab24b8d 100644 --- a/server/src/main/java/org/elasticsearch/search/profile/SearchProfileResults.java +++ b/server/src/main/java/org/elasticsearch/search/profile/SearchProfileResults.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.profile; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -45,7 +45,7 @@ public SearchProfileResults(Map shardResults) } public SearchProfileResults(StreamInput in) throws IOException { - if (in.getVersion().onOrAfter(Version.V_7_16_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { shardResults = in.readMap(StreamInput::readString, SearchProfileShardResult::new); } else { // Before 8.0.0 we only send the query phase result @@ -58,7 +58,7 @@ public SearchProfileResults(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { - if (out.getVersion().onOrAfter(Version.V_7_16_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_16_0)) { out.writeMap(shardResults, StreamOutput::writeString, (o, r) -> r.writeTo(o)); } else { // Before 8.0.0 we only send the query phase diff --git a/server/src/main/java/org/elasticsearch/search/query/QuerySearchRequest.java b/server/src/main/java/org/elasticsearch/search/query/QuerySearchRequest.java index 0bfb49e1764fc..36392a92f3b4b 100644 --- a/server/src/main/java/org/elasticsearch/search/query/QuerySearchRequest.java +++ b/server/src/main/java/org/elasticsearch/search/query/QuerySearchRequest.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.query; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.IndicesRequest; import org.elasticsearch.action.OriginalIndices; import org.elasticsearch.action.search.SearchShardTask; @@ -51,7 +51,7 @@ public QuerySearchRequest(StreamInput in) throws IOException { contextId = new ShardSearchContextId(in); dfs = new AggregatedDfs(in); originalIndices = OriginalIndices.readOriginalIndices(in); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { this.shardSearchRequest = in.readOptionalWriteable(ShardSearchRequest::new); } else { this.shardSearchRequest = null; @@ -64,7 +64,7 @@ public void writeTo(StreamOutput out) throws IOException { contextId.writeTo(out); dfs.writeTo(out); OriginalIndices.writeOriginalIndices(originalIndices, out); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeOptionalWriteable(shardSearchRequest); } } diff --git a/server/src/main/java/org/elasticsearch/search/query/QuerySearchResult.java b/server/src/main/java/org/elasticsearch/search/query/QuerySearchResult.java index 0741f13ca1f6d..1dbf9bbf0dd49 100644 --- a/server/src/main/java/org/elasticsearch/search/query/QuerySearchResult.java +++ b/server/src/main/java/org/elasticsearch/search/query/QuerySearchResult.java @@ -10,7 +10,7 @@ import org.apache.lucene.search.FieldDoc; import org.apache.lucene.search.TotalHits; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.io.stream.DelayableWriteable; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -75,7 +75,7 @@ public QuerySearchResult(StreamInput in) throws IOException { */ public QuerySearchResult(StreamInput in, boolean delayedAggregations) throws IOException { super(in); - if (in.getVersion().onOrAfter(Version.V_7_7_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { isNull = in.readBoolean(); } else { isNull = false; @@ -369,7 +369,7 @@ private void readFromWithId(ShardSearchContextId id, StreamInput in, boolean del hasProfileResults = profileShardResults != null; serviceTimeEWMA = in.readZLong(); nodeQueueSize = in.readInt(); - if (in.getVersion().onOrAfter(Version.V_7_10_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { setShardSearchRequest(in.readOptionalWriteable(ShardSearchRequest::new)); setRescoreDocIds(new RescoreDocIds(in)); } @@ -388,7 +388,7 @@ public void writeTo(StreamOutput out) throws IOException { if (aggregations != null && aggregations.isSerialized()) { throw new IllegalStateException("cannot send serialized version since it will leak"); } - if (out.getVersion().onOrAfter(Version.V_7_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_7_0)) { out.writeBoolean(isNull); } if (isNull == false) { @@ -421,7 +421,7 @@ public void writeToNoId(StreamOutput out) throws IOException { out.writeOptionalWriteable(profileShardResults); out.writeZLong(serviceTimeEWMA); out.writeInt(nodeQueueSize); - if (out.getVersion().onOrAfter(Version.V_7_10_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_10_0)) { out.writeOptionalWriteable(getShardSearchRequest()); getRescoreDocIds().writeTo(out); } diff --git a/server/src/main/java/org/elasticsearch/search/slice/SliceBuilder.java b/server/src/main/java/org/elasticsearch/search/slice/SliceBuilder.java index 895aa5bed5bff..fdd7aeb8f3b32 100644 --- a/server/src/main/java/org/elasticsearch/search/slice/SliceBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/slice/SliceBuilder.java @@ -11,7 +11,7 @@ import org.apache.lucene.search.MatchAllDocsQuery; import org.apache.lucene.search.MatchNoDocsQuery; import org.apache.lucene.search.Query; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.common.Strings; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -90,7 +90,7 @@ public SliceBuilder(String field, int id, int max) { } public SliceBuilder(StreamInput in) throws IOException { - if (in.getVersion().before(Version.V_7_15_0)) { + if (in.getTransportVersion().before(TransportVersion.V_7_15_0)) { field = in.readString(); } else { field = in.readOptionalString(); @@ -103,7 +103,7 @@ public SliceBuilder(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { // Before 7.15.0 we always defaulted to _id when the field wasn't provided - if (out.getVersion().before(Version.V_7_15_0)) { + if (out.getTransportVersion().before(TransportVersion.V_7_15_0)) { String sliceField = field != null ? field : IdFieldMapper.NAME; out.writeString(sliceField); } else { diff --git a/server/src/main/java/org/elasticsearch/search/sort/FieldSortBuilder.java b/server/src/main/java/org/elasticsearch/search/sort/FieldSortBuilder.java index 420ce122c0f0f..86e4a96ad328c 100644 --- a/server/src/main/java/org/elasticsearch/search/sort/FieldSortBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/sort/FieldSortBuilder.java @@ -16,7 +16,6 @@ import org.apache.lucene.search.SortField; import org.elasticsearch.ElasticsearchParseException; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -133,7 +132,7 @@ public FieldSortBuilder(String fieldName) { */ public FieldSortBuilder(StreamInput in) throws IOException { fieldName = in.readString(); - if (in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_0_0)) { if (in.readOptionalNamedWriteable(QueryBuilder.class) != null || in.readOptionalString() != null) { throw new IOException( "the [sort] options [nested_path] and [nested_filter] are removed in 8.x, " + "please use [nested] instead" @@ -145,10 +144,10 @@ public FieldSortBuilder(StreamInput in) throws IOException { sortMode = in.readOptionalWriteable(SortMode::readFromStream); unmappedType = in.readOptionalString(); nestedSort = in.readOptionalWriteable(NestedSortBuilder::new); - if (in.getVersion().onOrAfter(Version.V_7_2_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_2_0)) { numericType = in.readOptionalString(); } - if (in.getVersion().onOrAfter(Version.V_7_13_0)) { + if (in.getTransportVersion().onOrAfter(TransportVersion.V_7_13_0)) { format = in.readOptionalString(); } } @@ -156,7 +155,7 @@ public FieldSortBuilder(StreamInput in) throws IOException { @Override public void writeTo(StreamOutput out) throws IOException { out.writeString(fieldName); - if (out.getVersion().before(Version.V_8_0_0)) { + if (out.getTransportVersion().before(TransportVersion.V_8_0_0)) { out.writeOptionalNamedWriteable(null); out.writeOptionalString(null); } @@ -165,10 +164,10 @@ public void writeTo(StreamOutput out) throws IOException { out.writeOptionalWriteable(sortMode); out.writeOptionalString(unmappedType); out.writeOptionalWriteable(nestedSort); - if (out.getVersion().onOrAfter(Version.V_7_2_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_2_0)) { out.writeOptionalString(numericType); } - if (out.getVersion().onOrAfter(Version.V_7_13_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_7_13_0)) { out.writeOptionalString(format); } else { if (format != null) { diff --git a/server/src/main/java/org/elasticsearch/search/sort/GeoDistanceSortBuilder.java b/server/src/main/java/org/elasticsearch/search/sort/GeoDistanceSortBuilder.java index cc1a6fd7617cd..7f82db82a3cc7 100644 --- a/server/src/main/java/org/elasticsearch/search/sort/GeoDistanceSortBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/sort/GeoDistanceSortBuilder.java @@ -19,7 +19,6 @@ import org.apache.lucene.util.BitSet; import org.elasticsearch.ElasticsearchParseException; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.geo.GeoDistance; import org.elasticsearch.common.geo.GeoPoint; @@ -159,7 +158,7 @@ public GeoDistanceSortBuilder(StreamInput in) throws IOException { unit = DistanceUnit.readFromStream(in); order = SortOrder.readFromStream(in); sortMode = in.readOptionalWriteable(SortMode::readFromStream); - if (in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_0_0)) { if (in.readOptionalNamedWriteable(QueryBuilder.class) != null || in.readOptionalString() != null) { throw new IOException( "the [sort] options [nested_path] and [nested_filter] are removed in 8.x, " + "please use [nested] instead" @@ -180,7 +179,7 @@ public void writeTo(StreamOutput out) throws IOException { unit.writeTo(out); order.writeTo(out); out.writeOptionalWriteable(sortMode); - if (out.getVersion().before(Version.V_8_0_0)) { + if (out.getTransportVersion().before(TransportVersion.V_8_0_0)) { out.writeOptionalNamedWriteable(null); out.writeOptionalString(null); } diff --git a/server/src/main/java/org/elasticsearch/search/sort/ScriptSortBuilder.java b/server/src/main/java/org/elasticsearch/search/sort/ScriptSortBuilder.java index b19db1cb99746..79935c91a5bb7 100644 --- a/server/src/main/java/org/elasticsearch/search/sort/ScriptSortBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/sort/ScriptSortBuilder.java @@ -15,7 +15,6 @@ import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.BytesRefBuilder; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; @@ -110,7 +109,7 @@ public ScriptSortBuilder(StreamInput in) throws IOException { type = ScriptSortType.readFromStream(in); order = SortOrder.readFromStream(in); sortMode = in.readOptionalWriteable(SortMode::readFromStream); - if (in.getVersion().before(Version.V_8_0_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_0_0)) { if (in.readOptionalNamedWriteable(QueryBuilder.class) != null || in.readOptionalString() != null) { throw new IOException( "the [sort] options [nested_path] and [nested_filter] are removed in 8.x, " + "please use [nested] instead" @@ -126,7 +125,7 @@ public void writeTo(StreamOutput out) throws IOException { type.writeTo(out); order.writeTo(out); out.writeOptionalWriteable(sortMode); - if (out.getVersion().before(Version.V_8_0_0)) { + if (out.getTransportVersion().before(TransportVersion.V_8_0_0)) { out.writeOptionalString(null); out.writeOptionalNamedWriteable(null); } diff --git a/server/src/main/java/org/elasticsearch/search/vectors/KnnVectorQueryBuilder.java b/server/src/main/java/org/elasticsearch/search/vectors/KnnVectorQueryBuilder.java index 1f9fc1bb59efb..bf7c009bdf601 100644 --- a/server/src/main/java/org/elasticsearch/search/vectors/KnnVectorQueryBuilder.java +++ b/server/src/main/java/org/elasticsearch/search/vectors/KnnVectorQueryBuilder.java @@ -14,7 +14,6 @@ import org.apache.lucene.search.Query; import org.apache.lucene.util.BytesRef; import org.elasticsearch.TransportVersion; -import org.elasticsearch.Version; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.core.Nullable; @@ -68,14 +67,14 @@ public KnnVectorQueryBuilder(StreamInput in) throws IOException { super(in); this.fieldName = in.readString(); this.numCands = in.readVInt(); - if (in.getVersion().before(Version.V_8_7_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_7_0)) { this.queryVector = in.readFloatArray(); this.byteQueryVector = null; } else { this.queryVector = in.readBoolean() ? in.readFloatArray() : null; this.byteQueryVector = in.readBoolean() ? in.readByteArray() : null; } - if (in.getVersion().before(Version.V_8_2_0)) { + if (in.getTransportVersion().before(TransportVersion.V_8_2_0)) { this.filterQueries = new ArrayList<>(); } else { this.filterQueries = readQueries(in); @@ -120,7 +119,7 @@ public KnnVectorQueryBuilder addFilterQueries(List filterQueries) protected void doWriteTo(StreamOutput out) throws IOException { out.writeString(fieldName); out.writeVInt(numCands); - if (out.getVersion().onOrAfter(Version.V_8_7_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_7_0)) { boolean queryVectorNotNull = queryVector != null; out.writeBoolean(queryVectorNotNull); if (queryVectorNotNull) { @@ -143,7 +142,7 @@ protected void doWriteTo(StreamOutput out) throws IOException { } out.writeFloatArray(f); } - if (out.getVersion().onOrAfter(Version.V_8_2_0)) { + if (out.getTransportVersion().onOrAfter(TransportVersion.V_8_2_0)) { writeQueries(out, filterQueries); } } diff --git a/server/src/test/java/org/elasticsearch/search/builder/SearchSourceBuilderTests.java b/server/src/test/java/org/elasticsearch/search/builder/SearchSourceBuilderTests.java index 5f0fcb4cad3b0..1ee8fe3e08297 100644 --- a/server/src/test/java/org/elasticsearch/search/builder/SearchSourceBuilderTests.java +++ b/server/src/test/java/org/elasticsearch/search/builder/SearchSourceBuilderTests.java @@ -8,7 +8,7 @@ package org.elasticsearch.search.builder; -import org.elasticsearch.Version; +import org.elasticsearch.TransportVersion; import org.elasticsearch.action.admin.cluster.stats.SearchUsageStats; import org.elasticsearch.common.ParsingException; import org.elasticsearch.common.Strings; @@ -45,7 +45,7 @@ import org.elasticsearch.search.vectors.KnnSearchBuilder; import org.elasticsearch.test.ESTestCase; import org.elasticsearch.test.EqualsHashCodeTestUtils; -import org.elasticsearch.test.VersionUtils; +import org.elasticsearch.test.TransportVersionUtils; import org.elasticsearch.usage.SearchUsageHolder; import org.elasticsearch.usage.UsageService; import org.elasticsearch.xcontent.ToXContent; @@ -117,9 +117,13 @@ public void testSerialization() throws IOException { public void testSerializingWithRuntimeFieldsBeforeSupportedThrows() { SearchSourceBuilder original = new SearchSourceBuilder().runtimeMappings(randomRuntimeMappings()); - Version v = VersionUtils.randomVersionBetween(random(), Version.V_7_0_0, VersionUtils.getPreviousVersion(Version.V_7_11_0)); + TransportVersion v = TransportVersionUtils.randomVersionBetween( + random(), + TransportVersion.V_7_0_0, + TransportVersionUtils.getPreviousVersion(TransportVersion.V_7_11_0) + ); Exception e = expectThrows(IllegalArgumentException.class, () -> copyBuilder(original, v)); - assertThat(e.getMessage(), equalTo("Versions before 7.11.0 don't support [runtime_mappings] and search was sent to [" + v + "]")); + assertThat(e.getMessage(), equalTo("Versions before 7110099 don't support [runtime_mappings] and search was sent to [" + v + "]")); } public void testShallowCopy() { @@ -136,10 +140,10 @@ public void testEqualsAndHashcode() throws IOException { } private SearchSourceBuilder copyBuilder(SearchSourceBuilder original) throws IOException { - return copyBuilder(original, Version.CURRENT); + return copyBuilder(original, TransportVersion.CURRENT); } - private SearchSourceBuilder copyBuilder(SearchSourceBuilder original, Version version) throws IOException { + private SearchSourceBuilder copyBuilder(SearchSourceBuilder original, TransportVersion version) throws IOException { return ESTestCase.copyWriteable(original, namedWriteableRegistry, SearchSourceBuilder::new, version); } diff --git a/server/src/test/java/org/elasticsearch/search/internal/ShardSearchRequestTests.java b/server/src/test/java/org/elasticsearch/search/internal/ShardSearchRequestTests.java index 6d78d990ffee8..11a4f4d180a09 100644 --- a/server/src/test/java/org/elasticsearch/search/internal/ShardSearchRequestTests.java +++ b/server/src/test/java/org/elasticsearch/search/internal/ShardSearchRequestTests.java @@ -8,6 +8,7 @@ package org.elasticsearch.search.internal; +import org.elasticsearch.TransportVersion; import org.elasticsearch.Version; import org.elasticsearch.action.OriginalIndices; import org.elasticsearch.action.search.SearchRequest; @@ -30,7 +31,7 @@ import org.elasticsearch.search.AbstractSearchTestCase; import org.elasticsearch.search.SearchSortValuesAndFormatsTests; import org.elasticsearch.search.builder.SearchSourceBuilder; -import org.elasticsearch.test.VersionUtils; +import org.elasticsearch.test.TransportVersionUtils; import org.elasticsearch.xcontent.DeprecationHandler; import org.elasticsearch.xcontent.ToXContent; import org.elasticsearch.xcontent.XContentBuilder; @@ -218,20 +219,20 @@ public QueryBuilder aliasFilter(IndexMetadata indexMetadata, String... aliasName public void testChannelVersion() throws Exception { ShardSearchRequest request = createShardSearchRequest(); - Version channelVersion = Version.CURRENT; + TransportVersion channelVersion = TransportVersion.CURRENT; assertThat(request.getChannelVersion(), equalTo(channelVersion)); int iterations = between(0, 5); // New version for (int i = 0; i < iterations; i++) { - Version version = VersionUtils.randomCompatibleVersion(random(), Version.CURRENT); + TransportVersion version = TransportVersionUtils.randomCompatibleVersion(random(), TransportVersion.CURRENT); if (request.isForceSyntheticSource()) { - version = VersionUtils.randomVersionBetween(random(), Version.V_8_4_0, Version.CURRENT); + version = TransportVersionUtils.randomVersionBetween(random(), TransportVersion.V_8_4_0, TransportVersion.CURRENT); } if (Optional.ofNullable(request.source()).map(SearchSourceBuilder::knnSearch).map(List::size).orElse(0) > 1) { - version = VersionUtils.randomVersionBetween(random(), Version.V_8_7_0, Version.CURRENT); + version = TransportVersionUtils.randomVersionBetween(random(), TransportVersion.V_8_7_0, TransportVersion.CURRENT); } request = copyWriteable(request, namedWriteableRegistry, ShardSearchRequest::new, version); - channelVersion = Version.min(channelVersion, version); + channelVersion = TransportVersion.min(channelVersion, version); assertThat(request.getChannelVersion(), equalTo(channelVersion)); if (randomBoolean()) { request = new ShardSearchRequest(request); @@ -255,7 +256,7 @@ public void testForceSyntheticUnsupported() throws IOException { request.setForceSyntheticSource(true); ShardSearchRequest shardRequest = createShardSearchReqest(request); StreamOutput out = new BytesStreamOutput(); - out.setVersion(Version.V_8_3_0); + out.setTransportVersion(TransportVersion.V_8_3_0); Exception e = expectThrows(IllegalArgumentException.class, () -> shardRequest.writeTo(out)); assertEquals(e.getMessage(), "force_synthetic_source is not supported before 8.4.0"); }