Fix support for infinite ?master_timeout (#107050)

Specifying `?master_timeout=-1` on an API which performs a cluster state
update means that the cluster state update task will never time out
while waiting in the pending tasks queue. However this parameter is also
re-used in a few places where a timeout of `-1` means something else,
typically to timeout immediately. This commit fixes those places so that
`?master_timeout=-1` consistently means to wait forever.
This commit is contained in:
David Turner 2024-04-10 18:32:38 +01:00 committed by GitHub
parent 1587dada58
commit ccbb5badce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
32 changed files with 133 additions and 97 deletions

View file

@ -57,10 +57,7 @@ This API deletes a configured collection of
[[ccr-delete-auto-follow-pattern-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-delete-auto-follow-pattern-examples]]
==== {api-examples-title}

View file

@ -75,10 +75,7 @@ This API will return the specified auto-follow pattern collection.
[[ccr-get-auto-follow-pattern-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-get-auto-follow-pattern-examples]]
==== {api-examples-title}

View file

@ -43,10 +43,7 @@ meantime.
[[ccr-pause-auto-follow-pattern-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-pause-auto-follow-pattern-examples]]
==== {api-examples-title}

View file

@ -74,10 +74,7 @@ the new patterns.
[[ccr-put-auto-follow-pattern-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-put-auto-follow-pattern-request-body]]
==== {api-request-body-title}

View file

@ -38,10 +38,7 @@ have been deleted or closed in the meantime.
[[ccr-resume-auto-follow-pattern-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-resume-auto-follow-pattern-examples]]
==== {api-examples-title}

View file

@ -52,10 +52,7 @@ replication options and whether the follower indices are active or paused.
[[ccr-get-follow-info-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[role="child_attributes"]
[[ccr-get-follow-info-response-body]]

View file

@ -56,10 +56,7 @@ following task.
[[ccr-post-pause-follow-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-post-pause-follow-examples]]
==== {api-examples-title}

View file

@ -69,10 +69,7 @@ returns, the follower index will resume fetching operations from the leader inde
[[ccr-post-resume-follow-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-post-resume-follow-request-body]]
==== {api-request-body-title}

View file

@ -63,10 +63,7 @@ irreversible operation.
[[ccr-post-unfollow-query-params]]
==== {api-query-parms-title}
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-post-unfollow-examples]]
==== {api-examples-title}

View file

@ -65,11 +65,7 @@ referenced leader index. When this API returns, the follower index exists, and
follower shard requires transferring all the remote Lucene segment files to
the follower index.
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[[ccr-put-follow-request-body]]
==== {api-request-body-title}

View file

@ -56,10 +56,7 @@ shard-level stats as in the <<ccr-get-follow-stats,get follower stats API>>.
`timeout`::
(Optional, time) Controls the amount of time to wait for results. Defaults to unlimited.
`master_timeout`::
(Optional, <<time-units, time units>>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to `30s`.
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=master-timeout]
[role="child_attributes"]
[[ccr-get-stats-response-body]]