-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Add a new request parameter "cluster_manager_timeout" in the REST APIs that accept "master_timeout" parameter, and deprecate "master_timeout" #2511
Copy link
Copy link
Closed
Labels
enhancementEnhancement or improvement to existing feature or requestEnhancement or improvement to existing feature or requestv3.0.0Issues and PRs related to version 3.0.0Issues and PRs related to version 3.0.0
Description
Is your feature request related to a problem? Please describe.
To promote inclusive language, replace "master" terminology in the request parameter "master_timeout" in many REST APIs.
A part of issue #1549
In version 2.0 and above:
- Refactor the code commit a87c9d4 (PR: Centralize codes related to 'master_timeout' deprecation for eaiser removal - in CAT Nodes API #2670)
- Make High-Level-Rest-Client tests allow deprecation warning temporarily (PR: Make High-Level-Rest-Client tests allow deprecation warning temporarily, during deprecation of request parameter 'master_timeout' #2702)
- CAT APIs (PR: Add request parameter 'cluster_manager_timeout' as the alternative for 'master_timeout', and deprecate 'master_timeout' - in CAT APIs #2557)
- Cluster APIs (PR: Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Cluster APIs #2658)
- Index APIs (PR: Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Index APIs except index template APIs #2660 and Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Index Template APIs #2678)
- Snapshot APIs (PR: Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Snapshot APIs #2680)
- Ingest APIs and Script APIs (PR: Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Ingest APIs and Script APIs #2682)
[Update on 04/15/2022]
To compromise with the compatibility of High Level REST Client with server, the plan is adjusted to show deprecation warning start from version 3.0. For the detailed plan, see issue #2928 .
In version >=2.0 and <3.0:
- Remove deprecation warnings of using
master_timeoutparameter (PR: [2.x] Remove deprecation warning of using REST API request parameter 'master_timeout' #2920) - Set the High-Level-Rest-Client tests back to treating warning header as a failure. (PR: [2.x] Revert "Make High-Level-Rest-Client tests allow deprecation warning temporarily (#2702)" #2930)
In version 3.0 and above:
- Use
cluster_manager_timeoutinstead ofmaster_timeoutin High-Level-Rest-Client to fix test failures caused by deprecation warning (PR: Replace parameter 'master_timeout' with 'cluster_manager_tiemout' in RequestConverters of High-Level-Rest-Client #2683) - Set the High-Level-Rest-Client tests back to treating warning header as a failure. (PR: Revert "Make High-Level-Rest-Client tests allow deprecation warning temporarily (#2702)" #2744)
Describe the solution you'd like
- Replace "master_timeout" with "cluster_manager_timeout"
- The PR to make this change in CAT Nodes API is a sample for all the other APIs: Add request parameter 'cluster_manager_timeout' as the alternative for 'master_timeout', and deprecate 'master_timeout' - in CAT Nodes API #2435
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
List of the REST APIs that have got request parameter master_timeout
- In CAT API:
CAT Allocation API https://opensearch.org/docs/opensearch/rest-api/cat/cat-allocation/
CAT Indices API https://opensearch.org/docs/opensearch/rest-api/cat/cat-indices/
CAT Master API https://opensearch.org/docs/opensearch/rest-api/cat/cat-master/
CAT Nodeattrs API https://opensearch.org/docs/opensearch/rest-api/cat/cat-nodeattrs/
CAT Nodes API https://opensearch.org/docs/latest/opensearch/rest-api/cat/cat-nodes/
CAT Pending tasks API https://opensearch.org/docs/opensearch/rest-api/cat/cat-pending-tasks/
CAT Plugins API https://opensearch.org/docs/opensearch/rest-api/cat/cat-plugins/
CAT Repositories API https://opensearch.org/docs/opensearch/rest-api/cat/cat-repositories/
CAT Shards API https://opensearch.org/docs/opensearch/rest-api/cat/cat-shards/
CAT Snapshots API https://opensearch.org/docs/opensearch/rest-api/cat/cat-snapshots/
CAT Templates API https://opensearch.org/docs/opensearch/rest-api/cat/cat-templates/
CAT Thread pool API https://opensearch.org/docs/opensearch/rest-api/cat/cat-thread-pool/
CAT Segment API https://opensearch.org/docs/latest/opensearch/rest-api/cat/cat-segments/ - In Cluster API:
Cluster health API https://opensearch.org/docs/opensearch/rest-api/cluster-health/
Cluster reroute API -POST /_cluster/reroute
Cluster state API -GET /_cluster/state/<metrics>/<target>
Cluster get settings API https://opensearch.org/docs/latest/opensearch/rest-api/cluster-settings/
Cluster update settings API https://opensearch.org/docs/latest/opensearch/rest-api/cluster-settings/
Pending cluster tasks API -GET /_cluster/pending_tasks - In Index API:
Index management:
Create index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/create-index/
Delete index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/delete-index/
Get index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/get-index/
Open index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/open-index/
Close index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/close-index/
Clone index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/clone/
Shrink index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/shrink-index/
Split index API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/split/
Rollover index APIPOST /<rollover-target>/_rollover/<target-index>
Alias management:
Add index alias API https://opensearch.org/docs/latest/opensearch/rest-api/alias/
Delete index alias APIDELETE /<index>/_alias/<alias>
Mapping management:
Get mapping API
Put mapping API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/put-mapping/
Index settings:
Get Index Settings API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/get-settings/
Update index settings API https://opensearch.org/docs/latest/opensearch/rest-api/index-apis/update-settings/
Index templates:
Get (Legacy) Index Template APIGET /_template/<index-template>
Delete (Legacy) Index Template APIDELETE /_template/<index-template>
Put (Legacy) Index Template APIPUT /_template/<index-template>
Get (Composable) Index Template APIGET /_index_template/<index-template>
Delete (Composable) Index Template API
Put (Composable) Index Template API
Get Component Template APIGET /_component_template/<index-template>
Delete Component Template API
Put Component Template API
Simulate index APIPOST /_index_template/_simulate_index/{name}
Simulate index template APIPOST /_index_template/_simulate
Dangling indices:
Delete Dangling Index API
Import Dangling Index APIPOST /_dangling/<index-uuid>
Other:
Add index block APIPUT /<index>/_block/<block> - In Snapshot API:
Put snapshot repository APIPUT /_snapshot/<repository>,POST /_snapshot/<repository>
Get snapshot repository API
Delete snapshot repository API
Clean up snapshot repository APIPOST /_snapshot/<repository>/_cleanup
Verify snapshot repository APIPOST /_snapshot/<repository>/_verify
Create snapshot API
Get snapshot API
Delete snapshot API
Restore snapshot APIPOST /_snapshot/<repository>/<snapshot>/_restore
Clone snapshot API
Get snapshot status APIGET _snapshot/<repository>/<snapshot>/_status - In Ingest API:
Put pipeline API https://opensearch.org/docs/latest/opensearch/rest-api/ingest-apis/create-update-ingest/
Get pipeline API https://opensearch.org/docs/latest/opensearch/rest-api/ingest-apis/get-ingest/
Delete pipeline API https://opensearch.org/docs/latest/opensearch/rest-api/ingest-apis/delete-ingest/ - In Script API:
Get stored script APIGET _scripts/<script-id>
Put stored script API
Delete stored script API
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementEnhancement or improvement to existing feature or requestEnhancement or improvement to existing feature or requestv3.0.0Issues and PRs related to version 3.0.0Issues and PRs related to version 3.0.0