Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update with more accurate numeric type in _core.yaml #598

Merged

Conversation

amberzsy
Copy link
Contributor

@amberzsy amberzsy commented Oct 2, 2024

Description

for _core.yaml

max_docs (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/modules/reindex/src/main/java/org/opensearch/index/reindex/AbstractBaseReindexRestHandler.java#L117

from (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/search/internal/SearchContext.java#L368

indices_boost (float) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/search/builder/SearchSourceBuilder.java#L1340C20-L1340C99

min_score (float) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/search/builder/SearchSourceBuilder.java#L1281

size (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/search/builder/SearchSourceBuilder.java#L170

terminate_after (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/search/builder/SearchSourceBuilder.java#L193

took / ingest_tool (int64) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/bulk/BulkResponse.java#L201

num_freed (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/search/ClearScrollResponse.java#L77

count (long) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/client/rest-high-level/src/main/java/org/opensearch/client/core/CountResponse.java#L60

metric_score (double) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/modules/rank-eval/src/main/java/org/opensearch/index/rankeval/EvalQueryQuality.java#L61

num_reduce_phases (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/search/SearchResponse.java#L412

requestsPerSecondString (float) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/modules/reindex/src/main/java/org/opensearch/index/reindex/AbstractBaseReindexRestHandler.java#L160

requests_per_second (float) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/modules/reindex/src/main/java/org/opensearch/index/reindex/RethrottleRequest.java#L53

if_primary_term (int64) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/bulk/BulkRequestParser.java#L236

max_concurrent_searches (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/modules/rank-eval/src/main/java/org/opensearch/index/rankeval/RankEvalSpec.java#L119

max_concurrent_shard_requests (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/rest/action/search/RestMultiSearchAction.java#L138

pre_filter_shard_size (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/search/SearchRequest.java#L82

batched_reduce_size (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/search/SearchRequest.java#L108

suggest_size (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/rest/action/search/RestSearchAction.java#L334

retry_on_conflict (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/action/bulk/BulkRequestParser.java#L238

scroll_size (int32) -> https://github.com/opensearch-project/OpenSearch/blob/4e3a6d038dfc37660c7b9e47f570a32b0f2be4d4/server/src/main/java/org/opensearch/index/reindex/AbstractBulkByScrollRequest.java#L70

Issues Resolved

#596

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Signed-off-by: amberzsy <[email protected]>
@dblock
Copy link
Member

dblock commented Oct 2, 2024

Maybe worth writing some hacky automation to sync these? :)

You might find https://github.com/dblock/opensearch-api interesting. I was trying to produce the API spec at runtime, which ended up being useful to do API coverage in this repo. Maybe it can produce some API specs for objects/shapes using reflection?

@dblock dblock merged commit eb6b844 into opensearch-project:main Oct 2, 2024
18 checks passed
Copy link
Contributor

github-actions bot commented Oct 2, 2024

Changes Analysis

Commit SHA: 01cae18
Comparing To SHA: 62da9f4

API Changes

Summary

└─┬Paths
  ├─┬/_search/scroll/{scroll_id}
  │ └─┬DELETE
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬num_freed
  │             └──[➕] format (27151:25)❌ 
  ├─┬/{index}/_msearch/template
  │ ├─┬GET
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (21925:17)❌ 
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (21925:17)❌ 
  ├─┬/{index}/_doc/{id}
  │ ├─┬PUT
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (18446:17)❌ 
  │ ├─┬POST
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (18446:17)❌ 
  │ └─┬DELETE
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (17714:17)❌ 
  ├─┬/{index}/_bulk/stream
  │ ├─┬PUT
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬took
  │ │         │ └──[➕] format (26865:25)❌ 
  │ │         └─┬ingest_took
  │ │           └──[➕] format (26868:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬ingest_took
  │           │ └──[➕] format (26868:25)❌ 
  │           └─┬took
  │             └──[➕] format (26865:25)❌ 
  ├─┬/{index}/_update_by_query
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (24923:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (24898:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (24972:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (25059:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (24995:17)❌ 
  │   └─┬Requestbody
  │     └─┬application/json
  │       └─┬Schema
  │         └─┬max_docs
  │           └──[➕] format (26813:25)❌ 
  ├─┬/{index}/_termvectors/{id}
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬took
  │ │           └──[➕] format (29831:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬took
  │             └──[➕] format (29831:25)❌ 
  ├─┬/{index}/_bulk
  │ ├─┬PUT
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬ingest_took
  │ │         │ └──[➕] format (26894:25)❌ 
  │ │         └─┬took
  │ │           └──[➕] format (26891:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬ingest_took
  │           │ └──[➕] format (26894:25)❌ 
  │           └─┬took
  │             └──[➕] format (26891:25)❌ 
  ├─┬/{index}/_search/template
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬max_score
  │ │         │ └──[➕] format (28973:25)❌ 
  │ │         ├─┬num_reduce_phases
  │ │         │ └──[➕] format (28976:25)❌ 
  │ │         └─┬took
  │ │           └──[➕] format (28954:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬max_score
  │           │ └──[➕] format (28973:25)❌ 
  │           ├─┬num_reduce_phases
  │           │ └──[➕] format (28976:25)❌ 
  │           └─┬took
  │             └──[➕] format (28954:25)❌ 
  ├─┬/_search/template
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬took
  │ │         │ └──[➕] format (28954:25)❌ 
  │ │         ├─┬max_score
  │ │         │ └──[➕] format (28973:25)❌ 
  │ │         └─┬num_reduce_phases
  │ │           └──[➕] format (28976:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬max_score
  │           │ └──[➕] format (28973:25)❌ 
  │           ├─┬num_reduce_phases
  │           │ └──[➕] format (28976:25)❌ 
  │           └─┬took
  │             └──[➕] format (28954:25)❌ 
  ├─┬/_reindex/{task_id}/_rethrottle
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (22804:17)❌ 
  ├─┬/_msearch/template
  │ ├─┬GET
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (21925:17)❌ 
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (21925:17)❌ 
  ├─┬/_bulk
  │ ├─┬PUT
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬ingest_took
  │ │         │ └──[➕] format (26894:25)❌ 
  │ │         └─┬took
  │ │           └──[➕] format (26891:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬ingest_took
  │           │ └──[➕] format (26894:25)❌ 
  │           └─┬took
  │             └──[➕] format (26891:25)❌ 
  ├─┬/_msearch
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (21992:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (21975:17)❌ 
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (21983:17)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (21975:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (21983:17)❌ 
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (21992:17)❌ 
  ├─┬/_update_by_query/{task_id}/_rethrottle
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (24789:17)❌ 
  ├─┬/_delete_by_query/{task_id}/_rethrottle
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (17356:17)❌ 
  ├─┬/{index}/_doc
  │ └─┬POST
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (18446:17)❌ 
  ├─┬/_search
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23313:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23450:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23541:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23624:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23427:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23385:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23599:17)❌ 
  │ │ └─┬Requestbody
  │ │   └─┬application/json
  │ │     └─┬Schema
  │ │       ├─┬size
  │ │       │ └──[➕] format (26331:25)❌ 
  │ │       ├─┬terminate_after
  │ │       │ └──[➕] format (26358:25)❌ 
  │ │       ├─┬indices_boost
  │ │       │ └─┬Schema
  │ │       │   └─┬Schema
  │ │       │     └──[➕] format (26286:29)❌ 
  │ │       ├─┬from
  │ │       │ └──[➕] format (26274:25)❌ 
  │ │       └─┬min_score
  │ │         └──[➕] format (26301:25)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23385:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23450:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23624:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23313:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23541:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23599:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23427:17)❌ 
  │   └─┬Requestbody
  │     └─┬application/json
  │       └─┬Schema
  │         ├─┬from
  │         │ └──[➕] format (26274:25)❌ 
  │         ├─┬min_score
  │         │ └──[➕] format (26301:25)❌ 
  │         ├─┬size
  │         │ └──[➕] format (26331:25)❌ 
  │         ├─┬terminate_after
  │         │ └──[➕] format (26358:25)❌ 
  │         └─┬indices_boost
  │           └─┬Schema
  │             └─┬Schema
  │               └──[➕] format (26286:29)❌ 
  ├─┬/_bulk/stream
  │ ├─┬PUT
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         ├─┬ingest_took
  │ │         │ └──[➕] format (26868:25)❌ 
  │ │         └─┬took
  │ │           └──[➕] format (26865:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           ├─┬ingest_took
  │           │ └──[➕] format (26868:25)❌ 
  │           └─┬took
  │             └──[➕] format (26865:25)❌ 
  ├─┬/{index}/_msearch
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (21992:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (21975:17)❌ 
  │ │ └─┬Parameters
  │ │   └─┬Schema
  │ │     └──[➕] format (21983:17)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (21992:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (21975:17)❌ 
  │   └─┬Parameters
  │     └─┬Schema
  │       └──[➕] format (21983:17)❌ 
  ├─┬/{index}/_termvectors
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬took
  │ │           └──[➕] format (29831:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬took
  │             └──[➕] format (29831:25)❌ 
  ├─┬/_count
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (17102:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (17137:17)❌ 
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬count
  │ │           └──[➕] format (27383:25)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17102:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17137:17)❌ 
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬count
  │             └──[➕] format (27383:25)❌ 
  ├─┬/_rank_eval
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬metric_score
  │ │           └──[➕] format (28799:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬metric_score
  │             └──[➕] format (28799:25)❌ 
  ├─┬/_reindex
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (22829:17)❌ 
  │   └─┬Requestbody
  │     └─┬application/json
  │       └─┬Schema
  │         ├─┬max_docs
  │         │ └──[➕] format (26157:25)❌ 
  │         └─┬size
  │           └──[➕] format (26162:25)❌ 
  ├─┬/{index}/_delete_by_query
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17530:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17489:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17621:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17553:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17464:17)❌ 
  │   └─┬Requestbody
  │     └─┬application/json
  │       └─┬Schema
  │         └─┬max_docs
  │           └──[➕] format (25364:25)❌ 
  ├─┬/{index}/_rank_eval
  │ ├─┬GET
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬metric_score
  │ │           └──[➕] format (28799:25)❌ 
  │ └─┬POST
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬metric_score
  │             └──[➕] format (28799:25)❌ 
  ├─┬/_search/scroll
  │ └─┬DELETE
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬num_freed
  │             └──[➕] format (27151:25)❌ 
  ├─┬/{index}/_search
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23427:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23450:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23385:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23313:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23599:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23624:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (23541:17)❌ 
  │ │ └─┬Requestbody
  │ │   └─┬application/json
  │ │     └─┬Schema
  │ │       ├─┬from
  │ │       │ └──[➕] format (26274:25)❌ 
  │ │       ├─┬terminate_after
  │ │       │ └──[➕] format (26358:25)❌ 
  │ │       ├─┬indices_boost
  │ │       │ └─┬Schema
  │ │       │   └─┬Schema
  │ │       │     └──[➕] format (26286:29)❌ 
  │ │       ├─┬min_score
  │ │       │ └──[➕] format (26301:25)❌ 
  │ │       └─┬size
  │ │         └──[➕] format (26331:25)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23599:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23624:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23541:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23313:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23385:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23427:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (23450:17)❌ 
  │   └─┬Requestbody
  │     └─┬application/json
  │       └─┬Schema
  │         ├─┬from
  │         │ └──[➕] format (26274:25)❌ 
  │         ├─┬min_score
  │         │ └──[➕] format (26301:25)❌ 
  │         ├─┬size
  │         │ └──[➕] format (26331:25)❌ 
  │         ├─┬terminate_after
  │         │ └──[➕] format (26358:25)❌ 
  │         └─┬indices_boost
  │           └─┬Schema
  │             └─┬Schema
  │               └──[➕] format (26286:29)❌ 
  ├─┬/{index}/_count
  │ ├─┬GET
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (17102:17)❌ 
  │ │ ├─┬Parameters
  │ │ │ └─┬Schema
  │ │ │   └──[➕] format (17137:17)❌ 
  │ │ └─┬Responses
  │ │   └─┬200
  │ │     └─┬application/json
  │ │       └─┬Schema
  │ │         └─┬count
  │ │           └──[➕] format (27383:25)❌ 
  │ └─┬POST
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17137:17)❌ 
  │   ├─┬Parameters
  │   │ └─┬Schema
  │   │   └──[➕] format (17102:17)❌ 
  │   └─┬Responses
  │     └─┬200
  │       └─┬application/json
  │         └─┬Schema
  │           └─┬count
  │             └──[➕] format (27383:25)❌ 
  └─┬/{index}/_update/{id}
    └─┬POST
      ├─┬Parameters
      │ └─┬Schema
      │   └──[➕] format (25180:17)❌ 
      └─┬Parameters
        └─┬Schema
          └──[➕] format (25139:17)❌ 

Document Element Total Changes Breaking Changes
paths 138 138
  • BREAKING Changes: 138 out of 138
  • Additions: 138
  • Breaking Additions: 138

Report

The full API changes report is available at: https://github.com/opensearch-project/opensearch-api-specification/actions/runs/11151469862/artifacts/2008078428

API Coverage

Before After Δ
Covered (%) 588 (57.59 %) 588 (57.59 %) 0 (0 %)
Uncovered (%) 433 (42.41 %) 433 (42.41 %) 0 (0 %)
Unknown 29 29 0

Copy link
Contributor

github-actions bot commented Oct 2, 2024

Spec Test Coverage Analysis

Total Tested
504 303 (60.12 %)

@amberzsy
Copy link
Contributor Author

amberzsy commented Oct 2, 2024

Maybe worth writing some hacky automation to sync these? :)

You might find https://github.com/dblock/opensearch-api interesting. I was trying to produce the API spec at runtime, which ended up being useful to do API coverage in this repo. Maybe it can produce some API specs for objects/shapes using reflection?

ohh. nice.

yeah, we had similar discussion yesterday

  1. how should we do version management. currently specs version not align with OpenSearch Core API release (v2.17, v2.16 etc).
  2. how the api/schema release work in OS project, as we have specs, OS core, all kinds of plugins etc. how to make sure all keep in-sync reg API/schema.
  3. we are building the tooling/lib to generate proto from specs, still evaluate if we want to contribute back to https://github.com/OpenAPITools/openapi-generator (not sure how open they are to accept PRs and proposals) or build different tooling based on existing generator tool.

@dblock
Copy link
Member

dblock commented Oct 2, 2024

I think I know the answers for (1) and (2).

  1. how should we do version management. currently specs version not align with OpenSearch Core API release (v2.17, v2.16 etc).

The spec is properly annotated with x-version-added, removed, etc, and covers all versions of the product. So this should not be a problem. If you need to generate a spec exactly for a given version it's also possible with tools in this repo.

  1. how the api/schema release work in OS project, as we have specs, OS core, all kinds of plugins etc. how to make sure all keep in-sync reg API/schema.

Using those x- annotations above and producing the output for specific versions/ranges.

@amberzsy
Copy link
Contributor Author

amberzsy commented Oct 3, 2024

Maybe worth writing some hacky automation to sync these? :)

take a look at https://github.com/dblock/opensearch-api, it's something good to start with. but i'm not sure if its feasible to generate comprehensive schema definition accurately without have certain enforcement to request PR owner to update proto/spec (e.g build.gradle check spec and proto insync and integration test exist etc. )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants