Elasticsearch Version
current
Installed Plugins
No response
Java Version
bundled
OS Version
any
Problem Description
When making a filtered aggs call, its possible to return a 5xx when it should be a 4xx due to malformed query or mappings for nested fields.
Steps to Reproduce
N/A (seen in production)
Logs (if relevant)
java.lang.IllegalStateException: [nested] failed to find nested object under path [<SOME NESTED QUERY FIELD>]
at org.elasticsearch.server@9.2.0/org.elasticsearch.index.query.NestedQueryBuilder.toQuery(NestedQueryBuilder.java:303)
at org.elasticsearch.server@9.2.0/org.elasticsearch.index.query.NestedQueryBuilder.doToQuery(NestedQueryBuilder.java:272)
at org.elasticsearch.server@9.2.0/org.elasticsearch.index.query.AbstractQueryBuilder.toQuery(AbstractQueryBuilder.java:119)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.aggregations.support.AggregationContext$ProductionAggregationContext.buildQuery(AggregationContext.java:500)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.aggregations.bucket.filter.FilterAggregationBuilder$FilterAggregatorFactory.<init>(FilterAggregationBuilder.java:173)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.aggregations.bucket.filter.FilterAggregationBuilder.doBuild(FilterAggregationBuilder.java:116)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.aggregations.AbstractAggregationBuilder.build(AbstractAggregationBuilder.java:130)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.aggregations.AggregatorFactories$Builder.build(AggregatorFactories.java:453)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.SearchService.parseSource(SearchService.java:1641)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.SearchService.createContext(SearchService.java:1354)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:888)
at org.elasticsearch.server@9.2.0/org.elasticsearch.search.SearchService.lambda$executeQueryPhase$7(SearchService.java:729)
at org.elasticsearch.server@9.2.0/org.elasticsearch.action.ActionRunnable$3.accept(ActionRunnable.java:79)
at org.elasticsearch.server@9.2.0/org.elasticsearch.action.ActionRunnable$3.accept(ActionRunnable.java:76)
at org.elasticsearch.server@9.2.0/org.elasticsearch.action.ActionRunnable$4.doRun(ActionRunnable.java:101)
at org.elasticsearch.server@9.2.0/org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:27)
at org.elasticsearch.server@9.2.0/org.elasticsearch.common.util.concurrent.TimedRunnable.doRun(TimedRunnable.java:35)
at org.elasticsearch.server@9.2.0/org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:1067)
at org.elasticsearch.server@9.2.0/org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:27)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1095)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:619)
at java.base/java.lang.Thread.run(Thread.java:1447)
Elasticsearch Version
current
Installed Plugins
No response
Java Version
bundled
OS Version
any
Problem Description
When making a filtered aggs call, its possible to return a 5xx when it should be a 4xx due to malformed query or mappings for nested fields.
Steps to Reproduce
N/A (seen in production)
Logs (if relevant)