diff --git a/CHANGELOG.md b/CHANGELOG.md index f5464921..d41a6df2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,6 +38,8 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Added missing `cancelled` and `resource_stats` to `/_reindex/{task_id}/_rethrottle` ([#740](https://github.com/opensearch-project/opensearch-api-specification/pull/740)) - Added missing `cancellation_time_millis` to `POST /_tasks/_cancel` ([#747](https://github.com/opensearch-project/opensearch-api-specification/pull/747)) - Added support for combining output variables ([#737](https://github.com/opensearch-project/opensearch-api-specification/pull/737)) +- Added 404 response to `/_search/scroll` ([#749](https://github.com/opensearch-project/opensearch-api-specification/pull/749)) +- Added `node_failures` to `DELETE /_search/scroll` and `DELETE /_search/scroll/{scroll_id}` ([#749](https://github.com/opensearch-project/opensearch-api-specification/pull/749)) ### Removed - Removed unsupported `_common.mapping:SourceField`'s `mode` field and associated `_common.mapping:SourceFieldMode` enum ([#652](https://github.com/opensearch-project/opensearch-api-specification/pull/652)) diff --git a/spec/namespaces/_core.yaml b/spec/namespaces/_core.yaml index 63a36d3d..e97de368 100644 --- a/spec/namespaces/_core.yaml +++ b/spec/namespaces/_core.yaml @@ -898,6 +898,8 @@ paths: responses: '200': $ref: '#/components/responses/clear_scroll@200' + '404': + $ref: '#/components/responses/clear_scroll@404' /_search/scroll/{scroll_id}: get: operationId: scroll.2 @@ -956,6 +958,8 @@ paths: responses: '200': $ref: '#/components/responses/clear_scroll@200' + '404': + $ref: '#/components/responses/clear_scroll@404' /_search/template: get: operationId: search_template.0 @@ -2868,6 +2872,20 @@ components: required: - num_freed - succeeded + clear_scroll@404: + content: + application/json: + schema: + type: object + properties: + succeeded: + type: boolean + num_freed: + type: integer + format: int32 + required: + - num_freed + - succeeded count@200: content: application/json: @@ -3370,6 +3388,10 @@ components: type: object additionalProperties: $ref: '../schemas/_core.update_by_query_rethrottle.yaml#/components/schemas/UpdateByQueryRethrottleNode' + node_failures: + type: array + items: + $ref: '../schemas/_common.yaml#/components/schemas/ErrorCause' required: - nodes parameters: diff --git a/tests/default/_core/search/scroll.yaml b/tests/default/_core/search/scroll.yaml index fb4baccd..6ed9e10f 100644 --- a/tests/default/_core/search/scroll.yaml +++ b/tests/default/_core/search/scroll.yaml @@ -105,3 +105,11 @@ chapters: path: /_search/scroll/{scroll_id} parameters: scroll_id: ${scroll.scroll_id} + - synopsis: Deleting a non-existent scroll. + method: DELETE + path: /_search/scroll + request: + payload: + scroll_id: ${scroll.scroll_id} + response: + status: 404 diff --git a/tests/default/_core/update_by_query/rethrottle.yaml b/tests/default/_core/update_by_query/rethrottle.yaml new file mode 100644 index 00000000..d1f27c0d --- /dev/null +++ b/tests/default/_core/update_by_query/rethrottle.yaml @@ -0,0 +1,25 @@ +$schema: ../../../../json_schemas/test_story.schema.yaml + +description: Test Update By Query rethrottle endpoint. +prologues: + - path: /books/_update_by_query + id: task + method: POST + parameters: + refresh: true + conflicts: proceed + wait_for_completion: false + request: + payload: + query: + match_all: {} + output: + id: payload.task +chapters: + - synopsis: Update by query. + path: /_update_by_query/{task_id}/_rethrottle + method: POST + parameters: + task_id: ${task.id} + requests_per_second: 10 + diff --git a/tests/plugins/workload-management/wlm/query_group.yaml b/tests/plugins/workload-management/wlm/query_group.yaml index aa6a68b9..475d5ef8 100644 --- a/tests/plugins/workload-management/wlm/query_group.yaml +++ b/tests/plugins/workload-management/wlm/query_group.yaml @@ -13,6 +13,16 @@ chapters: resource_limits: memory: 0.1 resiliency_mode: monitor + - synopsis: Update a QueryGroup by name. + path: /_wlm/query_group/{name} + method: PUT + parameters: + name: analytics + request: + payload: + resource_limits: + memory: 0.2 + resiliency_mode: soft - synopsis: Get the QueryGroup by name. path: /_wlm/query_group/{name} method: GET @@ -24,11 +34,19 @@ chapters: query_groups: - name: analytics resource_limits: - memory: 0.1 - resiliency_mode: monitor + memory: 0.2 + resiliency_mode: soft - synopsis: Get all QueryGroups. path: /_wlm/query_group method: GET + response: + status: 200 + payload: + query_groups: + - name: analytics + resource_limits: + memory: 0.2 + resiliency_mode: soft - synopsis: Delete a QueryGroup. path: /_wlm/query_group/{name} parameters: diff --git a/tests/snapshot/snapshot/snapshot.yaml b/tests/snapshot/snapshot/snapshot.yaml index 2ce557f4..79e6bb59 100644 --- a/tests/snapshot/snapshot/snapshot.yaml +++ b/tests/snapshot/snapshot/snapshot.yaml @@ -8,6 +8,12 @@ epilogues: parameters: repository: my-fs-repository snapshot: my-test-snapshot + - path: /_snapshot/{repository}/{snapshot} + method: DELETE + status: [200, 404] + parameters: + repository: my-fs-repository + snapshot: my-second-snapshot - path: /_snapshot/{repository} method: DELETE status: [200, 404] @@ -65,7 +71,22 @@ chapters: status: 200 payload: snapshot: - snapshot: my-test-snapshot + snapshot: my-test-snapshot + - synopsis: Create a second snapshot. + path: /_snapshot/{repository}/{snapshot} + method: POST + parameters: + repository: my-fs-repository + snapshot: my-second-snapshot + wait_for_completion: true + request: + payload: + indices: '*' + response: + status: 200 + payload: + snapshot: + snapshot: my-second-snapshot - synopsis: Get information about a snapshot. path: /_snapshot/{repository}/{snapshot} method: GET @@ -82,13 +103,13 @@ chapters: method: GET parameters: repository: my-fs-repository - snapshot: my-test-snapshot + snapshot: my-second-snapshot human: true response: status: 200 payload: snapshots: - - snapshot: my-test-snapshot + - snapshot: my-second-snapshot - synopsis: Delete a snapshot. path: /_snapshot/{repository}/{snapshot} method: DELETE diff --git a/tests/snapshot/snapshot/status.yaml b/tests/snapshot/snapshot/status.yaml index af00860d..bc93b334 100644 --- a/tests/snapshot/snapshot/status.yaml +++ b/tests/snapshot/snapshot/status.yaml @@ -34,6 +34,8 @@ prologues: ignore_unavailable: true include_global_state: false partial: true + retry: + count: 3 chapters: - synopsis: Get status of all running snapshots. path: /_snapshot/_status