From e7a7a4f4d84e91d3397def0ce1a9d99f75cd821d Mon Sep 17 00:00:00 2001 From: Luigi Dell'Aquila Date: Wed, 18 Dec 2024 09:57:38 +0100 Subject: [PATCH] Add spec for EQL allow_partial_search_results (#3342) (cherry picked from commit 5987f79aed121f3657fc75769e494b26404d512b) --- output/openapi/elasticsearch-openapi.json | 38 ++++ .../elasticsearch-serverless-openapi.json | 38 ++++ output/schema/schema-serverless.json | 200 +++++++++++++----- output/schema/schema.json | 50 ++++- output/schema/validation-errors.json | 2 + output/typescript/types.ts | 4 + package-lock.json | 2 +- specification/eql/search/EqlSearchRequest.ts | 13 ++ 8 files changed, 292 insertions(+), 55 deletions(-) diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 1e40b7acc0..7262045ee0 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -7737,6 +7737,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" }, @@ -7780,6 +7786,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" }, @@ -95093,6 +95105,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", @@ -102799,6 +102831,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 82aa7f60e4..860b86bb46 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -4979,6 +4979,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" }, @@ -5022,6 +5028,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" }, @@ -58618,6 +58630,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", @@ -62769,6 +62801,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 dcee298009..42db01e581 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -3337,7 +3337,7 @@ "stability": "stable" } }, - "description": "Get the status for a data stream lifecycle.\nRetrieves information about an index or data stream’s current data stream lifecycle status, such as time since index creation, time since rollover, the lifecycle configuration managing the index, or any errors encountered during lifecycle execution.", + "description": "Get the status for a data stream lifecycle.\nGet information about an index or data stream's current data stream lifecycle status, such as time since index creation, time since rollover, the lifecycle configuration managing the index, or any errors encountered during lifecycle execution.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/current/data-streams-explain-lifecycle.html", "name": "indices.explain_data_lifecycle", "request": { @@ -3980,9 +3980,17 @@ "stability": "stable" } }, - "description": "Create or update an index template.\nIndex templates define settings, mappings, and aliases that can be applied automatically to new indices.", + "description": "Create or update an index template.\nIndex templates define settings, mappings, and aliases that can be applied automatically to new indices.\nElasticsearch applies templates to new indices based on an index pattern that matches the index name.\n\nIMPORTANT: This documentation is about legacy index templates, which are deprecated and will be replaced by the composable templates introduced in Elasticsearch 7.8.\n\nComposable templates always take precedence over legacy templates.\nIf no composable template matches a new index, matching legacy templates are applied according to their order.\n\nIndex templates are only applied during index creation.\nChanges to index templates do not affect existing indices.\nSettings and mappings specified in create index API requests override any settings or mappings specified in an index template.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates-v1.html", + "extDocId": "index-templates", + "extDocUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/index-templates.html", "name": "indices.put_template", + "privileges": { + "cluster": [ + "manage_index_templates", + "manage" + ] + }, "request": { "name": "Request", "namespace": "indices.put_template" @@ -4448,9 +4456,14 @@ "visibility": "public" } }, - "description": "Create an inference endpoint", + "description": "Create an inference endpoint.\nWhen you create an inference endpoint, the associated machine learning model is automatically deployed if it is not already running.\nAfter creating the endpoint, wait for the model deployment to complete before using it.\nTo verify the deployment status, use the get trained model statistics API.\nLook for `\"state\": \"fully_allocated\"` in the response and ensure that the `\"allocation_count\"` matches the `\"target_allocation_count\"`.\nAvoid creating multiple endpoints for the same model unless required, as each endpoint consumes significant resources.\n\nIMPORTANT: The inference APIs enable you to use certain services, such as built-in machine learning models (ELSER, E5), models uploaded through Eland, Cohere, OpenAI, Mistral, Azure OpenAI, Google AI Studio, Google Vertex AI, Anthropic, Watsonx.ai, or Hugging Face.\nFor built-in models and models uploaded through Eland, the inference APIs offer an alternative way to use and manage trained models.\nHowever, if you do not plan to use the inference APIs to use these models or if you want to use non-NLP models, use the machine learning trained model APIs.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/put-inference-api.html", "name": "inference.put", + "privileges": { + "cluster": [ + "manage_inference" + ] + }, "request": { "name": "Request", "namespace": "inference.put" @@ -4730,7 +4743,7 @@ "stability": "stable" } }, - "description": "Get license information.\nReturns information about your Elastic license, including its type, its status, when it was issued, and when it expires.\nFor more information about the different types of licenses, refer to [Elastic Stack subscriptions](https://www.elastic.co/subscriptions).", + "description": "Get license information.\nGet information about your Elastic license including its type, its status, when it was issued, and when it expires.\n\nNOTE: If the master node is generating a new cluster state, the get license API may return a `404 Not Found` response.\nIf you receive an unexpected 404 response after cluster startup, wait a short period and retry the request.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/master/get-license.html", "name": "license.get", "request": { @@ -4765,8 +4778,10 @@ "stability": "stable" } }, - "description": "Deletes a pipeline used for Logstash Central Management.", + "description": "Delete a Logstash pipeline.\n\nDelete a pipeline that is used for Logstash Central Management.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/current/logstash-api-delete-pipeline.html", + "extDocId": "logstash-centralized-pipeline-management", + "extDocUrl": "https://www.elastic.co/guide/en/logstash/{branch}/logstash-centralized-pipeline-management.html", "name": "logstash.delete_pipeline", "privileges": { "cluster": [ @@ -4805,8 +4820,10 @@ "stability": "stable" } }, - "description": "Retrieves pipelines used for Logstash Central Management.", + "description": "Get Logstash pipelines.\n\nGet pipelines that are used for Logstash Central Management.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/current/logstash-api-get-pipeline.html", + "extDocId": "logstash-centralized-pipeline-management", + "extDocUrl": "https://www.elastic.co/guide/en/logstash/{branch}/logstash-centralized-pipeline-management.html", "name": "logstash.get_pipeline", "privileges": { "cluster": [ @@ -4851,8 +4868,10 @@ "stability": "stable" } }, - "description": "Creates or updates a pipeline used for Logstash Central Management.", + "description": "Create or update a Logstash pipeline.\n\nCreate a pipeline that is used for Logstash Central Management.\nIf the specified pipeline exists, it is replaced.", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/current/logstash-api-put-pipeline.html", + "extDocId": "logstash-centralized-pipeline-management", + "extDocUrl": "https://www.elastic.co/guide/en/logstash/{branch}/logstash-centralized-pipeline-management.html", "name": "logstash.put_pipeline", "privileges": { "cluster": [ @@ -9303,7 +9322,7 @@ "stability": "experimental" } }, - "description": "Get task information.\nReturns information about the tasks currently executing in the cluster.", + "description": "Get task information.\nGet information about a task currently running in the cluster.", "docId": "tasks", "docUrl": "https://www.elastic.co/guide/en/elasticsearch/reference/{branch}/tasks.html", "name": "tasks.get", @@ -11343,6 +11362,19 @@ } ], "query": [ + { + "description": "If `true`, the response will include the ingest pipelines that were executed for each index or create.", + "name": "list_executed_pipelines", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } + }, { "description": "ID of the pipeline to use to preprocess incoming documents.\nIf the index has a default ingest pipeline specified, then setting the value to `_none` disables the default ingest pipeline for this request.\nIf a final pipeline is configured it will always run, regardless of the value of this parameter.", "name": "pipeline", @@ -11454,9 +11486,22 @@ "namespace": "_builtins" } } + }, + { + "description": "If `true`, the request's actions must target a data stream (existing or to-be-created).", + "name": "require_data_stream", + "required": false, + "serverDefault": false, + "type": { + "kind": "instance_of", + "type": { + "name": "boolean", + "namespace": "_builtins" + } + } } ], - "specLocation": "_global/bulk/BulkRequest.ts#L32-L105" + "specLocation": "_global/bulk/BulkRequest.ts#L32-L115" }, { "body": { @@ -17430,6 +17475,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", @@ -17541,6 +17608,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, @@ -17605,7 +17698,7 @@ } } ], - "specLocation": "eql/search/EqlSearchRequest.ts#L28-L122" + "specLocation": "eql/search/EqlSearchRequest.ts#L28-L135" }, { "body": { @@ -21229,7 +21322,7 @@ "body": { "kind": "no_body" }, - "description": "Get the status for a data stream lifecycle.\nRetrieves information about an index or data stream’s current data stream lifecycle status, such as time since index creation, time since rollover, the lifecycle configuration managing the index, or any errors encountered during lifecycle execution.", + "description": "Get the status for a data stream lifecycle.\nGet information about an index or data stream's current data stream lifecycle status, such as time since index creation, time since rollover, the lifecycle configuration managing the index, or any errors encountered during lifecycle execution.", "inherits": { "type": { "name": "RequestBase", @@ -23529,7 +23622,7 @@ } ] }, - "description": "Create or update an index template.\nIndex templates define settings, mappings, and aliases that can be applied automatically to new indices.", + "description": "Create or update an index template.\nIndex templates define settings, mappings, and aliases that can be applied automatically to new indices.\nElasticsearch applies templates to new indices based on an index pattern that matches the index name.\n\nIMPORTANT: This documentation is about legacy index templates, which are deprecated and will be replaced by the composable templates introduced in Elasticsearch 7.8.\n\nComposable templates always take precedence over legacy templates.\nIf no composable template matches a new index, matching legacy templates are applied according to their order.\n\nIndex templates are only applied during index creation.\nChanges to index templates do not affect existing indices.\nSettings and mappings specified in create index API requests override any settings or mappings specified in an index template.", "inherits": { "type": { "name": "RequestBase", @@ -23606,7 +23699,7 @@ } } ], - "specLocation": "indices/put_template/IndicesPutTemplateRequest.ts#L29-L95" + "specLocation": "indices/put_template/IndicesPutTemplateRequest.ts#L29-L107" }, { "body": { @@ -25151,7 +25244,7 @@ } } }, - "description": "Create an inference endpoint", + "description": "Create an inference endpoint.\nWhen you create an inference endpoint, the associated machine learning model is automatically deployed if it is not already running.\nAfter creating the endpoint, wait for the model deployment to complete before using it.\nTo verify the deployment status, use the get trained model statistics API.\nLook for `\"state\": \"fully_allocated\"` in the response and ensure that the `\"allocation_count\"` matches the `\"target_allocation_count\"`.\nAvoid creating multiple endpoints for the same model unless required, as each endpoint consumes significant resources.\n\nIMPORTANT: The inference APIs enable you to use certain services, such as built-in machine learning models (ELSER, E5), models uploaded through Eland, Cohere, OpenAI, Mistral, Azure OpenAI, Google AI Studio, Google Vertex AI, Anthropic, Watsonx.ai, or Hugging Face.\nFor built-in models and models uploaded through Eland, the inference APIs offer an alternative way to use and manage trained models.\nHowever, if you do not plan to use the inference APIs to use these models or if you want to use non-NLP models, use the machine learning trained model APIs.", "inherits": { "type": { "name": "RequestBase", @@ -25190,7 +25283,7 @@ } ], "query": [], - "specLocation": "inference/put/PutRequest.ts#L25-L44" + "specLocation": "inference/put/PutRequest.ts#L25-L54" }, { "body": { @@ -25818,7 +25911,7 @@ "body": { "kind": "no_body" }, - "description": "Get license information.\nReturns information about your Elastic license, including its type, its status, when it was issued, and when it expires.\nFor more information about the different types of licenses, refer to [Elastic Stack subscriptions](https://www.elastic.co/subscriptions).", + "description": "Get license information.\nGet information about your Elastic license including its type, its status, when it was issued, and when it expires.\n\nNOTE: If the master node is generating a new cluster state, the get license API may return a `404 Not Found` response.\nIf you receive an unexpected 404 response after cluster startup, wait a short period and retry the request.", "inherits": { "type": { "name": "RequestBase", @@ -25863,7 +25956,7 @@ } } ], - "specLocation": "license/get/GetLicenseRequest.ts#L22-L45" + "specLocation": "license/get/GetLicenseRequest.ts#L22-L47" }, { "body": { @@ -25896,7 +25989,7 @@ "body": { "kind": "no_body" }, - "description": "Deletes a pipeline used for Logstash Central Management.", + "description": "Delete a Logstash pipeline.\n\nDelete a pipeline that is used for Logstash Central Management.", "inherits": { "type": { "name": "RequestBase", @@ -25910,7 +26003,7 @@ }, "path": [ { - "description": "Identifier for the pipeline.", + "description": "An identifier for the pipeline.", "name": "id", "required": true, "type": { @@ -25923,7 +26016,7 @@ } ], "query": [], - "specLocation": "logstash/delete_pipeline/LogstashDeletePipelineRequest.ts#L23-L37" + "specLocation": "logstash/delete_pipeline/LogstashDeletePipelineRequest.ts#L23-L40" }, { "body": { @@ -25943,7 +26036,7 @@ "body": { "kind": "no_body" }, - "description": "Retrieves pipelines used for Logstash Central Management.", + "description": "Get Logstash pipelines.\n\nGet pipelines that are used for Logstash Central Management.", "inherits": { "type": { "name": "RequestBase", @@ -25957,7 +26050,7 @@ }, "path": [ { - "description": "Comma-separated list of pipeline identifiers.", + "description": "A comma-separated list of pipeline identifiers.", "name": "id", "required": false, "type": { @@ -25970,7 +26063,7 @@ } ], "query": [], - "specLocation": "logstash/get_pipeline/LogstashGetPipelineRequest.ts#L23-L37" + "specLocation": "logstash/get_pipeline/LogstashGetPipelineRequest.ts#L23-L40" }, { "body": { @@ -26016,7 +26109,7 @@ } } }, - "description": "Creates or updates a pipeline used for Logstash Central Management.", + "description": "Create or update a Logstash pipeline.\n\nCreate a pipeline that is used for Logstash Central Management.\nIf the specified pipeline exists, it is replaced.", "inherits": { "type": { "name": "RequestBase", @@ -26030,7 +26123,7 @@ }, "path": [ { - "description": "Identifier for the pipeline.", + "description": "An identifier for the pipeline.", "name": "id", "required": true, "type": { @@ -26043,7 +26136,7 @@ } ], "query": [], - "specLocation": "logstash/put_pipeline/LogstashPutPipelineRequest.ts#L24-L39" + "specLocation": "logstash/put_pipeline/LogstashPutPipelineRequest.ts#L24-L44" }, { "body": { @@ -41911,7 +42004,7 @@ "body": { "kind": "no_body" }, - "description": "Get task information.\nReturns information about the tasks currently executing in the cluster.", + "description": "Get task information.\nGet information about a task currently running in the cluster.", "inherits": { "type": { "name": "RequestBase", @@ -104935,6 +105028,7 @@ } }, { + "description": "Human readable text that identifies the particular request that the task is performing.\nFor example, it might identify the search request being performed by a search task.\nOther kinds of tasks have different descriptions, like `_reindex` which has the source and the destination, or `_bulk` which just has the number of requests and the destination indices.\nMany requests will have only an empty description because more detailed information about the request is not easily available or particularly helpful in identifying the request.", "name": "description", "required": false, "type": { @@ -105041,7 +105135,7 @@ } }, { - "description": "Task status information can vary wildly from task to task.", + "description": "The internal status of the task, which varies from task to task.\nThe format also varies.\nWhile the goal is to keep the status for a particular task consistent from version to version, this is not always possible because sometimes the implementation changes.\nFields might be removed from the status for a particular request so any parsing you do of the status might break in minor releases.", "name": "status", "required": false, "type": { @@ -105071,7 +105165,7 @@ } } ], - "specLocation": "tasks/_types/TaskInfo.ts#L32-L47" + "specLocation": "tasks/_types/TaskInfo.ts#L32-L58" }, { "inherits": { @@ -105909,7 +106003,7 @@ "name": "XPackCategory", "namespace": "xpack.info" }, - "specLocation": "xpack/info/XPackInfoRequest.ts#L44-L48" + "specLocation": "xpack/info/XPackInfoRequest.ts#L49-L53" }, { "attachedBehaviors": [ @@ -126550,7 +126644,7 @@ }, "properties": [ { - "description": "Description of the pipeline.\nThis description is not used by Elasticsearch or Logstash.", + "description": "A description of the pipeline.\nThis description is not used by Elasticsearch or Logstash.", "name": "description", "required": true, "type": { @@ -126562,7 +126656,7 @@ } }, { - "description": "Date the pipeline was last updated.\nMust be in the `yyyy-MM-dd'T'HH:mm:ss.SSSZZ` strict_date_time format.", + "description": "The date the pipeline was last updated.\nIt must be in the `yyyy-MM-dd'T'HH:mm:ss.SSSZZ` strict_date_time format.", "name": "last_modified", "required": true, "type": { @@ -126574,59 +126668,59 @@ } }, { - "description": "Optional metadata about the pipeline.\nMay have any contents.\nThis metadata is not generated or used by Elasticsearch or Logstash.", - "name": "pipeline_metadata", + "description": "The configuration for the pipeline.", + "extDocId": "logstash-configuration-file-structure", + "extDocUrl": "https://www.elastic.co/guide/en/logstash/{branch}/configuration-file-structure.html", + "name": "pipeline", "required": true, "type": { "kind": "instance_of", "type": { - "name": "PipelineMetadata", - "namespace": "logstash._types" + "name": "string", + "namespace": "_builtins" } } }, { - "description": "User who last updated the pipeline.", - "name": "username", + "description": "Optional metadata about the pipeline, which can have any contents.\nThis metadata is not generated or used by Elasticsearch or Logstash.", + "name": "pipeline_metadata", "required": true, "type": { "kind": "instance_of", "type": { - "name": "string", - "namespace": "_builtins" + "name": "PipelineMetadata", + "namespace": "logstash._types" } } }, { - "description": "Configuration for the pipeline.", - "docId": "logstash-configuration-file-structure", - "docUrl": "https://www.elastic.co/guide/en/logstash/{branch}/configuration-file-structure.html", - "name": "pipeline", + "description": "Settings for the pipeline.\nIt supports only flat keys in dot notation.", + "extDocId": "logstash-logstash-settings-file", + "extDocUrl": "https://www.elastic.co/guide/en/logstash/{branch}/logstash-settings-file.html", + "name": "pipeline_settings", "required": true, "type": { "kind": "instance_of", "type": { - "name": "string", - "namespace": "_builtins" + "name": "PipelineSettings", + "namespace": "logstash._types" } } }, { - "description": "Settings for the pipeline.\nSupports only flat keys in dot notation.", - "docId": "logstash-logstash-settings-file", - "docUrl": "https://www.elastic.co/guide/en/logstash/{branch}/logstash-settings-file.html", - "name": "pipeline_settings", + "description": "The user who last updated the pipeline.", + "name": "username", "required": true, "type": { "kind": "instance_of", "type": { - "name": "PipelineSettings", - "namespace": "logstash._types" + "name": "string", + "namespace": "_builtins" } } } ], - "specLocation": "logstash/_types/Pipeline.ts#L60-L92" + "specLocation": "logstash/_types/Pipeline.ts#L60-L91" }, { "kind": "interface", diff --git a/output/schema/schema.json b/output/schema/schema.json index aa5d955bfa..68c59c2319 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -118014,6 +118014,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", @@ -118124,6 +118146,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, @@ -118188,7 +118236,7 @@ } } ], - "specLocation": "eql/search/EqlSearchRequest.ts#L28-L122" + "specLocation": "eql/search/EqlSearchRequest.ts#L28-L135" }, { "kind": "response", diff --git a/output/schema/validation-errors.json b/output/schema/validation-errors.json index 7ccd47a27c..67fd6b8620 100644 --- a/output/schema/validation-errors.json +++ b/output/schema/validation-errors.json @@ -454,6 +454,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 ada55a4dec..26ab5851c6 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -10324,6 +10324,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 @@ -10340,6 +10342,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 diff --git a/package-lock.json b/package-lock.json index eb5922e739..88470238cc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "elasticsearch-specification", + "name": "backport-8.x", "lockfileVersion": 3, "requires": true, "packages": { diff --git a/specification/eql/search/EqlSearchRequest.ts b/specification/eql/search/EqlSearchRequest.ts index 87c5c3293f..e3a6c7c050 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