From a67bf7e7c6a792497489cb4fa3481d0c4080c218 Mon Sep 17 00:00:00 2001 From: Luigi DellAquila Date: Tue, 17 Dec 2024 17:41:21 +0100 Subject: [PATCH 1/2] Add spec for EQL allow_partial_search_results and allow_partial_sequence_results --- specification/eql/search/EqlSearchRequest.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/specification/eql/search/EqlSearchRequest.ts b/specification/eql/search/EqlSearchRequest.ts index 325db1fdb1..96b3aec48a 100644 --- a/specification/eql/search/EqlSearchRequest.ts +++ b/specification/eql/search/EqlSearchRequest.ts @@ -43,6 +43,17 @@ export interface Request extends RequestBase { * @server_default true */ allow_no_indices?: boolean + /** + * If true, returns partial results if there are shard failures. If false, returns an error with no partial results. + * @server_default false + */ + allow_partial_search_results?: boolean + /** + * If true, sequence queries will return partial results in case of shard failures. If false, they will return no results at all. + * This flag has effect only if allow_partial_search_results is true. + * @server_default false + */ + allow_partial_sequence_results?: boolean /** * @server_default open */ @@ -100,6 +111,8 @@ export interface Request extends RequestBase { keep_alive?: Duration keep_on_completion?: boolean wait_for_completion_timeout?: Duration + allow_partial_search_results?: boolean + allow_partial_sequence_results?: boolean /** * For basic queries, the maximum number of matching events to return. Defaults to 10 * @doc_id eql-basic-syntax From 7be83c9e8be3b5a49e0934f24b66460fe8761c0d Mon Sep 17 00:00:00 2001 From: Luigi DellAquila Date: Tue, 17 Dec 2024 17:56:37 +0100 Subject: [PATCH 2/2] make contrib --- output/openapi/elasticsearch-openapi.json | 38 ++++++++++++++ .../elasticsearch-serverless-openapi.json | 38 ++++++++++++++ output/schema/schema-serverless.json | 50 ++++++++++++++++++- output/schema/schema.json | 50 ++++++++++++++++++- output/schema/validation-errors.json | 2 + output/typescript/types.ts | 4 ++ 6 files changed, 180 insertions(+), 2 deletions(-) diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 5dd6684516..61b2c070f8 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -7830,6 +7830,12 @@ { "$ref": "#/components/parameters/eql.search#allow_no_indices" }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_search_results" + }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_sequence_results" + }, { "$ref": "#/components/parameters/eql.search#expand_wildcards" }, @@ -7873,6 +7879,12 @@ { "$ref": "#/components/parameters/eql.search#allow_no_indices" }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_search_results" + }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_sequence_results" + }, { "$ref": "#/components/parameters/eql.search#expand_wildcards" }, @@ -95222,6 +95234,26 @@ }, "style": "form" }, + "eql.search#allow_partial_search_results": { + "in": "query", + "name": "allow_partial_search_results", + "description": "If true, returns partial results if there are shard failures. If false, returns an error with no partial results.", + "deprecated": false, + "schema": { + "type": "boolean" + }, + "style": "form" + }, + "eql.search#allow_partial_sequence_results": { + "in": "query", + "name": "allow_partial_sequence_results", + "description": "If true, sequence queries will return partial results in case of shard failures. If false, they will return no results at all.\nThis flag has effect only if allow_partial_search_results is true.", + "deprecated": false, + "schema": { + "type": "boolean" + }, + "style": "form" + }, "eql.search#expand_wildcards": { "in": "query", "name": "expand_wildcards", @@ -102899,6 +102931,12 @@ "wait_for_completion_timeout": { "$ref": "#/components/schemas/_types:Duration" }, + "allow_partial_search_results": { + "type": "boolean" + }, + "allow_partial_sequence_results": { + "type": "boolean" + }, "size": { "$ref": "#/components/schemas/_types:uint" }, diff --git a/output/openapi/elasticsearch-serverless-openapi.json b/output/openapi/elasticsearch-serverless-openapi.json index 3bd73e4a41..41d65dce43 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -4931,6 +4931,12 @@ { "$ref": "#/components/parameters/eql.search#allow_no_indices" }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_search_results" + }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_sequence_results" + }, { "$ref": "#/components/parameters/eql.search#expand_wildcards" }, @@ -4974,6 +4980,12 @@ { "$ref": "#/components/parameters/eql.search#allow_no_indices" }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_search_results" + }, + { + "$ref": "#/components/parameters/eql.search#allow_partial_sequence_results" + }, { "$ref": "#/components/parameters/eql.search#expand_wildcards" }, @@ -58556,6 +58568,26 @@ }, "style": "form" }, + "eql.search#allow_partial_search_results": { + "in": "query", + "name": "allow_partial_search_results", + "description": "If true, returns partial results if there are shard failures. If false, returns an error with no partial results.", + "deprecated": false, + "schema": { + "type": "boolean" + }, + "style": "form" + }, + "eql.search#allow_partial_sequence_results": { + "in": "query", + "name": "allow_partial_sequence_results", + "description": "If true, sequence queries will return partial results in case of shard failures. If false, they will return no results at all.\nThis flag has effect only if allow_partial_search_results is true.", + "deprecated": false, + "schema": { + "type": "boolean" + }, + "style": "form" + }, "eql.search#expand_wildcards": { "in": "query", "name": "expand_wildcards", @@ -62658,6 +62690,12 @@ "wait_for_completion_timeout": { "$ref": "#/components/schemas/_types:Duration" }, + "allow_partial_search_results": { + "type": "boolean" + }, + "allow_partial_sequence_results": { + "type": "boolean" + }, "size": { "$ref": "#/components/schemas/_types:uint" }, diff --git a/output/schema/schema-serverless.json b/output/schema/schema-serverless.json index c82ab82184..ad9028a56d 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -17394,6 +17394,28 @@ } } }, + { + "name": "allow_partial_search_results", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, + { + "name": "allow_partial_sequence_results", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "description": "For basic queries, the maximum number of matching events to return. Defaults to 10", "docId": "eql-basic-syntax", @@ -17518,6 +17540,32 @@ } } }, + { + "description": "If true, returns partial results if there are shard failures. If false, returns an error with no partial results.", + "name": "allow_partial_search_results", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, + { + "description": "If true, sequence queries will return partial results in case of shard failures. If false, they will return no results at all.\nThis flag has effect only if allow_partial_search_results is true.", + "name": "allow_partial_sequence_results", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "name": "expand_wildcards", "required": false, @@ -17582,7 +17630,7 @@ } } ], - "specLocation": "eql/search/EqlSearchRequest.ts#L28-L129" + "specLocation": "eql/search/EqlSearchRequest.ts#L28-L142" }, { "body": { diff --git a/output/schema/schema.json b/output/schema/schema.json index 43f3e2115d..6f9888f720 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -118264,6 +118264,28 @@ } } }, + { + "name": "allow_partial_search_results", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, + { + "name": "allow_partial_sequence_results", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "description": "For basic queries, the maximum number of matching events to return. Defaults to 10", "docId": "eql-basic-syntax", @@ -118387,6 +118409,32 @@ } } }, + { + "description": "If true, returns partial results if there are shard failures. If false, returns an error with no partial results.", + "name": "allow_partial_search_results", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, + { + "description": "If true, sequence queries will return partial results in case of shard failures. If false, they will return no results at all.\nThis flag has effect only if allow_partial_search_results is true.", + "name": "allow_partial_sequence_results", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "name": "expand_wildcards", "required": false, @@ -118451,7 +118499,7 @@ } } ], - "specLocation": "eql/search/EqlSearchRequest.ts#L28-L129" + "specLocation": "eql/search/EqlSearchRequest.ts#L28-L142" }, { "kind": "response", diff --git a/output/schema/validation-errors.json b/output/schema/validation-errors.json index 18f4b43d11..af0e3e065e 100644 --- a/output/schema/validation-errors.json +++ b/output/schema/validation-errors.json @@ -372,6 +372,8 @@ "eql.search": { "request": [ "Request: query parameter 'allow_no_indices' does not exist in the json spec", + "Request: query parameter 'allow_partial_search_results' does not exist in the json spec", + "Request: query parameter 'allow_partial_sequence_results' does not exist in the json spec", "Request: query parameter 'expand_wildcards' does not exist in the json spec", "Request: query parameter 'ignore_unavailable' does not exist in the json spec" ], diff --git a/output/typescript/types.ts b/output/typescript/types.ts index 2de101888b..f79872a632 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -10349,6 +10349,8 @@ export interface EqlGetStatusResponse { export interface EqlSearchRequest extends RequestBase { index: Indices allow_no_indices?: boolean + allow_partial_search_results?: boolean + allow_partial_sequence_results?: boolean expand_wildcards?: ExpandWildcards ignore_unavailable?: boolean keep_alive?: Duration @@ -10365,6 +10367,8 @@ export interface EqlSearchRequest extends RequestBase { keep_alive?: Duration keep_on_completion?: boolean wait_for_completion_timeout?: Duration + allow_partial_search_results?: boolean + allow_partial_sequence_results?: boolean size?: uint fields?: QueryDslFieldAndFormat | Field | (QueryDslFieldAndFormat | Field)[] result_position?: EqlSearchResultPosition