Skip to content

Commit 7b58a8a

Browse files
committed
Serialize bucket keys as strings as opposed to optional strings.
1 parent b5af95b commit 7b58a8a

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

server/src/main/java/org/elasticsearch/search/aggregations/bucket/range/InternalRange.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
*/
1919
package org.elasticsearch.search.aggregations.bucket.range;
2020

21+
import org.elasticsearch.Version;
2122
import org.elasticsearch.common.io.stream.StreamInput;
2223
import org.elasticsearch.common.io.stream.StreamOutput;
2324
import org.elasticsearch.common.xcontent.XContentBuilder;
@@ -168,7 +169,11 @@ private static String generateKey(double from, double to, DocValueFormat format)
168169

169170
@Override
170171
public void writeTo(StreamOutput out) throws IOException {
171-
out.writeOptionalString(key);
172+
if (out.getVersion().onOrAfter(Version.V_7_0_0_alpha1)) {
173+
out.writeString(key);
174+
} else {
175+
out.writeOptionalString(key);
176+
}
172177
out.writeDouble(from);
173178
out.writeDouble(to);
174179
out.writeVLong(docCount);
@@ -254,7 +259,9 @@ public InternalRange(StreamInput in) throws IOException {
254259
int size = in.readVInt();
255260
List<B> ranges = new ArrayList<>(size);
256261
for (int i = 0; i < size; i++) {
257-
String key = in.readOptionalString();
262+
String key = in.getVersion().onOrAfter(Version.V_7_0_0_alpha1)
263+
? in.readString()
264+
: in.readOptionalString();
258265
ranges.add(getFactory().createBucket(key, in.readDouble(), in.readDouble(), in.readVLong(),
259266
InternalAggregations.readAggregations(in), keyed, format));
260267
}

0 commit comments

Comments
 (0)