Skip to content

Commit

Permalink
Merge branch 'main' into reindex-rethrottle
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel (dB.) Doubrovkine <[email protected]>
  • Loading branch information
dblock authored Dec 17, 2024
2 parents 5122560 + 4226d83 commit fe241eb
Show file tree
Hide file tree
Showing 14 changed files with 258 additions and 58 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Added response schema for `GET /_plugins/_knn/warmup/{index}` ([#717](https://github.com/opensearch-project/opensearch-api-specification/pull/717))
- Added support for multiple test verbs ([#724](https://github.com/opensearch-project/opensearch-api-specification/pull/724))
- Added support for using a certificate and key in tests ([#731](https://github.com/opensearch-project/opensearch-api-specification/pull/731))
- Added `_type` to `termvector` and `mtermvector` ([#734](https://github.com/opensearch-project/opensearch-api-specification/pull/734))
- Added missing `cancelled` and `resource_stats` to `/_reindex/{task_id}/_rethrottle` ([#740](https://github.com/opensearch-project/opensearch-api-specification/pull/740))

### Removed
Expand All @@ -46,6 +47,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Removed unsupported `cause` and `create` from `/_index_template/_simulate_index/{name}` ([#691](https://github.com/opensearch-project/opensearch-api-specification/pull/691))
- Removed `mappings` from `required` in `indices.simulate_template#Template` ([#691](https://github.com/opensearch-project/opensearch-api-specification/pull/691))
- Removed `HealthStatusCapatilized` and merged it with `HealthStatus` ([#725](https://github.com/opensearch-project/opensearch-api-specification/pull/725))
- Removed `id` from `required` in `indices.termvectors@200` ([#734](https://github.com/opensearch-project/opensearch-api-specification/pull/734))

### Fixed
- Spec passes OpenAPI 3.1.0 validations ([#646](https://github.com/opensearch-project/opensearch-api-specification/pull/646))
Expand Down Expand Up @@ -74,6 +76,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- Fixed request schema for `PATCH /_plugins/_security/api/nodesdn` ([#731](https://github.com/opensearch-project/opensearch-api-specification/pull/731))
- Fixed response schema for `GET /_plugins/_security/api/nodesdn/{cluster_name}` ([#731](https://github.com/opensearch-project/opensearch-api-specification/pull/731))
- Fixed request body for `/_search/scroll/{scroll_id}` ([#732](https://github.com/opensearch-project/opensearch-api-specification/pull/732))
- Fixed type in `_msearch/template` ([#735](https://github.com/opensearch-project/opensearch-api-specification/pull/735))

### Changed
- Changed `tasks._common:TaskInfo` and `tasks._common:TaskGroup` to be composed of a `tasks._common:TaskInfoBase` ([#683](https://github.com/opensearch-project/opensearch-api-specification/pull/683))
Expand Down
3 changes: 2 additions & 1 deletion spec/namespaces/_core.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3338,8 +3338,9 @@ components:
format: int64
_version:
$ref: '../schemas/_common.yaml#/components/schemas/VersionNumber'
_type:
$ref: '../schemas/_common.yaml#/components/schemas/Type'
required:
- _id
- _index
- _version
- found
Expand Down
4 changes: 3 additions & 1 deletion spec/schemas/_core.msearch_template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,9 @@ components:
The value is the variable value.
type: object
additionalProperties:
type: object
oneOf:
- type: string
- type: object
profile:
description: When `true`, provides a profile for the query execution.
type: boolean
Expand Down
2 changes: 2 additions & 0 deletions spec/schemas/_core.mtermvectors.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ components:
$ref: '_core.termvectors.yaml#/components/schemas/TermVector'
error:
$ref: '_common.yaml#/components/schemas/ErrorCause'
_type:
$ref: '_common.yaml#/components/schemas/Type'
required:
- _id
- _index
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$schema: ../../../json_schemas/test_story.schema.yaml
$schema: ../../../../json_schemas/test_story.schema.yaml

description: Test document multi-search.
epilogues:
Expand All @@ -25,7 +25,9 @@ prologues:
chapters:
- synopsis: Run multiple search requests in single request (GET).
path: /_msearch
method: GET
method:
- GET
- POST
request:
content_type: application/x-ndjson
payload:
Expand All @@ -52,34 +54,4 @@ chapters:
- _index: movies
_id: movie1
- _index: movies
_id: movie2
- synopsis: Run multiple search requests in single request (POST).
path: /_msearch
method: POST
request:
content_type: application/x-ndjson
payload:
- {index: movies}
- {query: {match_all: {}}}
- {index: books}
- {query: {match_all: {}}}
response:
status: 200
payload:
responses:
- hits:
total:
value: 2
relation: eq
hits:
- _index: movies
_id: movie1
- _index: movies
_id: movie2
- hits:
total:
value: 1
relation: eq
hits:
- _index: books
_id: book1
_id: movie2
35 changes: 35 additions & 0 deletions tests/default/_core/msearch/template.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
$schema: ../../../../json_schemas/test_story.schema.yaml

description: Test _msearch/template APIs.
prologues:
- path: /_bulk
method: POST
parameters:
refresh: true
request:
content_type: application/x-ndjson
payload:
- {create: {_index: books, _id: book1}}
- {author: Harper Lee, title: To Kill a Mockingbird, year: 1960}
- {create: {_index: books, _id: book2}}
- {author: Elizabeth Rudnick, title: Beauty and the Beast, year: 1991}
- {create: {_index: books, _id: book3}}
- {author: George Orwell, title: '1984', year: 1949}
epilogues:
- path: /books
method: DELETE
status: [200, 404]

chapters:
- synopsis: Perform a multi-search template query using a GET request.
path: /_msearch/template
method:
- GET
- POST
request:
content_type: application/x-ndjson
payload:
- {index: books}
- {source: '{"query": {"match": {"title": "{{title}}"}}}', params: {title: Mockingbird}}
- {index: books}
- {source: '{"query": {"match": {"title": "{{title}}"}}}', params: {title: Beast}}
44 changes: 44 additions & 0 deletions tests/default/_core/mtermvectors.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
$schema: ../../../json_schemas/test_story.schema.yaml

description: Test _mtermvectors APIs.
prologues:
- path: /books
method: PUT
request:
payload:
mappings:
properties:
author:
type: text
title:
term_vector: yes
type: text
year:
type: integer
- path: /_bulk
method: POST
parameters:
refresh: true
request:
content_type: application/x-ndjson
payload:
- {create: {_index: books, _id: book1}}
- {author: Harper Lee, title: To Kill a Mockingbird, year: 1960}
- {create: {_index: books, _id: book2}}
- {author: Elizabeth Rudnick, title: Beauty and the Beast, year: 1991}
epilogues:
- path: /books
method: DELETE
status: [200, 404]

chapters:
- synopsis: Retrieve term vectors for specific documents.
path: /_mtermvectors
method:
- GET
- POST
request:
payload:
docs:
- _id: book1
_index: books
17 changes: 17 additions & 0 deletions tests/default/_core/validate/query.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
$schema: ../../../../json_schemas/test_story.schema.yaml

description: Test validating queries.
chapters:
- synopsis: Validate a query.
path: /_validate/query
method:
- GET
- POST
request:
payload:
query:
match_all: {}
response:
status: 200
payload:
valid: true
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$schema: ../../../json_schemas/test_story.schema.yaml
$schema: ../../../../json_schemas/test_story.schema.yaml

description: Test endpoints relevant to the lifecycle of an index, including multi-get and multi-search operations.
prologues:
Expand All @@ -22,7 +22,9 @@ epilogues:
chapters:
- synopsis: Perform a `_msearch` request to execute multiple search queries in a single call.
path: /{index}/_msearch
method: POST
method:
- GET
- POST
parameters:
index: books
request:
Expand All @@ -31,6 +33,4 @@ chapters:
- {index: books}
- {query: {match: {title: To Kill a Mockingbird}}}
- {index: books}
- {query: {match: {title: The Cruise}}}
response:
status: 200
- {query: {match: {title: The Cruise}}}
37 changes: 37 additions & 0 deletions tests/default/indices/msearch/template.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
$schema: ../../../../json_schemas/test_story.schema.yaml

description: Test _msearch/template APIs.
prologues:
- path: /_bulk
method: POST
parameters:
refresh: true
request:
content_type: application/x-ndjson
payload:
- {create: {_index: books, _id: book1}}
- {author: Harper Lee, title: To Kill a Mockingbird, year: 1960}
- {create: {_index: books, _id: book2}}
- {author: Elizabeth Rudnick, title: Beauty and the Beast, year: 1991}
- {create: {_index: books, _id: book3}}
- {author: George Orwell, title: '1984', year: 1949}
epilogues:
- path: /books
method: DELETE
status: [200, 404]

chapters:
- synopsis: Perform a multi-search template query using a GET request.
path: /{index}/_msearch/template
parameters:
index: books
method:
- GET
- POST
request:
content_type: application/x-ndjson
payload:
- {index: books}
- {source: '{"query": {"match": {"title": "{{title}}"}}}', params: {title: Mockingbird}}
- {index: books}
- {source: '{"query": {"match": {"title": "{{title}}"}}}', params: {title: Beast}}
45 changes: 45 additions & 0 deletions tests/default/indices/mtermvectors.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
$schema: ../../../json_schemas/test_story.schema.yaml

description: Test _mtermvectors APIs.
prologues:
- path: /books
method: PUT
request:
payload:
mappings:
properties:
author:
type: text
title:
term_vector: yes
type: text
year:
type: integer
- path: /_bulk
method: POST
parameters:
refresh: true
request:
content_type: application/x-ndjson
payload:
- {create: {_index: books, _id: book1}}
- {author: Harper Lee, title: To Kill a Mockingbird, year: 1960}
- {create: {_index: books, _id: book2}}
- {author: Elizabeth Rudnick, title: Beauty and the Beast, year: 1991}
epilogues:
- path: /books
method: DELETE
status: [200, 404]

chapters:
- synopsis: Retrieve term vectors for specific documents in an index.
path: /{index}/_mtermvectors
parameters:
index: books
method:
- GET
- POST
request:
payload:
docs:
- _id: book1
53 changes: 53 additions & 0 deletions tests/default/indices/termvectors.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
$schema: ../../../json_schemas/test_story.schema.yaml

description: Test _termvectors APIs.
prologues:
- path: /books
method: PUT
request:
payload:
mappings:
properties:
author:
type: text
title:
term_vector: yes
type: text
year:
type: integer
- path: /_bulk
method: POST
parameters:
refresh: true
request:
content_type: application/x-ndjson
payload:
- {create: {_index: books, _id: book1}}
- {author: Harper Lee, title: To Kill a Mockingbird, year: 1960}
- {create: {_index: books, _id: book2}}
- {author: Elizabeth Rudnick, title: Beauty and the Beast, year: 1991}
epilogues:
- path: /books
method: DELETE
status: [200, 404]

chapters:
- synopsis: Get term vectors for a specific index.
path: /{index}/_termvectors
parameters:
index: books
method:
- GET
- POST
request:
payload:
doc:
title: To kill
- synopsis: Get term vectors for a document by its ID.
path: /{index}/_termvectors/{id}
parameters:
index: books
id: book1
method:
- GET
- POST
Loading

0 comments on commit fe241eb

Please sign in to comment.