summaryrefslogtreecommitdiff
path: root/core/src/main/java/org/elasticsearch/search/aggregations/metrics
diff options
context:
space:
mode:
authorChristoph Büscher <christoph@elastic.co>2017-06-17 13:06:31 +0200
committerGitHub <noreply@github.com>2017-06-17 13:06:31 +0200
commite99ced06ccc0fac29f70c79b017a2712b656e616 (patch)
tree2e43e0170678cc9364e3687dcb9cb51ab5d7df14 /core/src/main/java/org/elasticsearch/search/aggregations/metrics
parentfde6f72cb57960a73f7466071517a724b6de9402 (diff)
[Tests] Check that parsing aggregations works in a forward compatible way (#25219)
This change adds tests for the aggregation parsing that try to simulate that we can parse existing aggregations in a forward compatible way in the future, ignoring potential newly added fields or substructures to the xContent response.
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/aggregations/metrics')
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/ParsedPercentiles.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/ParsedPercentiles.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/ParsedPercentiles.java
index 48f3dccece..3f56b21dcd 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/ParsedPercentiles.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/ParsedPercentiles.java
@@ -140,6 +140,8 @@ public abstract class ParsedPercentiles extends ParsedAggregation implements Ite
}
} else if (token == XContentParser.Token.VALUE_NULL) {
aggregation.addPercentile(Double.valueOf(parser.currentName()), Double.NaN);
+ } else {
+ parser.skipChildren(); // skip potential inner objects and arrays for forward compatibility
}
}
} else if (token == XContentParser.Token.START_ARRAY) {
@@ -164,6 +166,8 @@ public abstract class ParsedPercentiles extends ParsedAggregation implements Ite
}
} else if (token == XContentParser.Token.VALUE_NULL) {
value = Double.NaN;
+ } else {
+ parser.skipChildren(); // skip potential inner objects and arrays for forward compatibility
}
}
if (key != null) {