Skip to content

Commit 49ce5bb

Browse files
committed
Add capability for rejecting invalid nesting aggs
1 parent 66baa3a commit 49ce5bb

File tree

2 files changed

+9
-0
lines changed
  • modules/aggregations/src/yamlRestTest/resources/rest-api-spec/test/aggregations
  • server/src/main/java/org/elasticsearch/rest/action/search

2 files changed

+9
-0
lines changed

modules/aggregations/src/yamlRestTest/resources/rest-api-spec/test/aggregations/nested.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,13 @@ setup:
196196
- match: { aggregations.courses.highpass_filter.unnest.department.buckets.1.doc_count: 1 }
197197
---
198198
"Illegal reverse nested aggregation to a child nested object":
199+
- requires:
200+
capabilities:
201+
- method: POST
202+
path: /_search
203+
capabilities: [ reject_invalid_reverse_nesting ]
204+
test_runner_features: [ capabilities ]
205+
reason: "search does not yet reject invalid reverse nesting paths"
199206
- do:
200207
catch: /Reverse nested path \[courses.sessions\] is not a parent of the current nested scope \[courses\]/
201208
search:

server/src/main/java/org/elasticsearch/rest/action/search/SearchCapabilities.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ private SearchCapabilities() {}
6060
private static final String BUCKET_SCRIPT_PARENT_MULTI_BUCKET_ERROR = "bucket_script_parent_multi_bucket_error";
6161
private static final String EXCLUDE_SOURCE_VECTORS_SETTING = "exclude_source_vectors_setting";
6262
private static final String CLUSTER_STATS_EXTENDED_USAGE = "extended-search-usage-stats";
63+
private static final String REJECT_INVALID_REVERSE_NESTING = "reject_invalid_reverse_nesting";
6364

6465
public static final Set<String> CAPABILITIES;
6566
static {
@@ -90,6 +91,7 @@ private SearchCapabilities() {}
9091
capabilities.add(BUCKET_SCRIPT_PARENT_MULTI_BUCKET_ERROR);
9192
capabilities.add(EXCLUDE_SOURCE_VECTORS_SETTING);
9293
capabilities.add(CLUSTER_STATS_EXTENDED_USAGE);
94+
capabilities.add(REJECT_INVALID_REVERSE_NESTING);
9395
CAPABILITIES = Set.copyOf(capabilities);
9496
}
9597
}

0 commit comments

Comments
 (0)