elasticsearch 8.17.1__py3-none-any.whl → 9.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- elasticsearch/__init__.py +2 -2
- elasticsearch/_async/client/__init__.py +2125 -1053
- elasticsearch/_async/client/_base.py +1 -2
- elasticsearch/_async/client/async_search.py +46 -35
- elasticsearch/_async/client/autoscaling.py +32 -26
- elasticsearch/_async/client/cat.py +244 -176
- elasticsearch/_async/client/ccr.py +268 -128
- elasticsearch/_async/client/cluster.py +191 -164
- elasticsearch/_async/client/connector.py +226 -116
- elasticsearch/_async/client/dangling_indices.py +22 -16
- elasticsearch/_async/client/enrich.py +51 -11
- elasticsearch/_async/client/eql.py +54 -13
- elasticsearch/_async/client/esql.py +351 -7
- elasticsearch/_async/client/features.py +37 -27
- elasticsearch/_async/client/fleet.py +32 -22
- elasticsearch/_async/client/graph.py +10 -9
- elasticsearch/_async/client/ilm.py +115 -77
- elasticsearch/_async/client/indices.py +1119 -772
- elasticsearch/_async/client/inference.py +1933 -84
- elasticsearch/_async/client/ingest.py +83 -50
- elasticsearch/_async/client/license.py +90 -38
- elasticsearch/_async/client/logstash.py +20 -9
- elasticsearch/_async/client/migration.py +26 -17
- elasticsearch/_async/client/ml.py +646 -374
- elasticsearch/_async/client/monitoring.py +6 -3
- elasticsearch/_async/client/nodes.py +52 -54
- elasticsearch/_async/client/query_rules.py +59 -33
- elasticsearch/_async/client/rollup.py +124 -86
- elasticsearch/_async/client/search_application.py +60 -32
- elasticsearch/_async/client/searchable_snapshots.py +25 -12
- elasticsearch/_async/client/security.py +903 -562
- elasticsearch/_async/client/shutdown.py +34 -36
- elasticsearch/_async/client/simulate.py +22 -28
- elasticsearch/_async/client/slm.py +65 -40
- elasticsearch/_async/client/snapshot.py +454 -327
- elasticsearch/_async/client/sql.py +43 -22
- elasticsearch/_async/client/ssl.py +17 -18
- elasticsearch/_async/client/synonyms.py +58 -37
- elasticsearch/_async/client/tasks.py +77 -48
- elasticsearch/_async/client/text_structure.py +65 -56
- elasticsearch/_async/client/transform.py +124 -93
- elasticsearch/_async/client/watcher.py +117 -73
- elasticsearch/_async/client/xpack.py +18 -9
- elasticsearch/_async/helpers.py +1 -2
- elasticsearch/_sync/client/__init__.py +2125 -1053
- elasticsearch/_sync/client/_base.py +1 -2
- elasticsearch/_sync/client/async_search.py +46 -35
- elasticsearch/_sync/client/autoscaling.py +32 -26
- elasticsearch/_sync/client/cat.py +244 -176
- elasticsearch/_sync/client/ccr.py +268 -128
- elasticsearch/_sync/client/cluster.py +191 -164
- elasticsearch/_sync/client/connector.py +226 -116
- elasticsearch/_sync/client/dangling_indices.py +22 -16
- elasticsearch/_sync/client/enrich.py +51 -11
- elasticsearch/_sync/client/eql.py +54 -13
- elasticsearch/_sync/client/esql.py +351 -7
- elasticsearch/_sync/client/features.py +37 -27
- elasticsearch/_sync/client/fleet.py +32 -22
- elasticsearch/_sync/client/graph.py +10 -9
- elasticsearch/_sync/client/ilm.py +115 -77
- elasticsearch/_sync/client/indices.py +1119 -772
- elasticsearch/_sync/client/inference.py +1933 -84
- elasticsearch/_sync/client/ingest.py +83 -50
- elasticsearch/_sync/client/license.py +90 -38
- elasticsearch/_sync/client/logstash.py +20 -9
- elasticsearch/_sync/client/migration.py +26 -17
- elasticsearch/_sync/client/ml.py +646 -374
- elasticsearch/_sync/client/monitoring.py +6 -3
- elasticsearch/_sync/client/nodes.py +52 -54
- elasticsearch/_sync/client/query_rules.py +59 -33
- elasticsearch/_sync/client/rollup.py +124 -86
- elasticsearch/_sync/client/search_application.py +60 -32
- elasticsearch/_sync/client/searchable_snapshots.py +25 -12
- elasticsearch/_sync/client/security.py +903 -562
- elasticsearch/_sync/client/shutdown.py +34 -36
- elasticsearch/_sync/client/simulate.py +22 -28
- elasticsearch/_sync/client/slm.py +65 -40
- elasticsearch/_sync/client/snapshot.py +454 -327
- elasticsearch/_sync/client/sql.py +43 -22
- elasticsearch/_sync/client/ssl.py +17 -18
- elasticsearch/_sync/client/synonyms.py +58 -37
- elasticsearch/_sync/client/tasks.py +77 -48
- elasticsearch/_sync/client/text_structure.py +65 -56
- elasticsearch/_sync/client/transform.py +124 -93
- elasticsearch/_sync/client/utils.py +1 -41
- elasticsearch/_sync/client/watcher.py +117 -73
- elasticsearch/_sync/client/xpack.py +18 -9
- elasticsearch/_version.py +1 -1
- elasticsearch/client.py +2 -0
- elasticsearch/dsl/__init__.py +203 -0
- elasticsearch/dsl/_async/__init__.py +16 -0
- elasticsearch/dsl/_async/document.py +522 -0
- elasticsearch/dsl/_async/faceted_search.py +50 -0
- elasticsearch/dsl/_async/index.py +639 -0
- elasticsearch/dsl/_async/mapping.py +49 -0
- elasticsearch/dsl/_async/search.py +237 -0
- elasticsearch/dsl/_async/update_by_query.py +47 -0
- elasticsearch/dsl/_sync/__init__.py +16 -0
- elasticsearch/dsl/_sync/document.py +514 -0
- elasticsearch/dsl/_sync/faceted_search.py +50 -0
- elasticsearch/dsl/_sync/index.py +597 -0
- elasticsearch/dsl/_sync/mapping.py +49 -0
- elasticsearch/dsl/_sync/search.py +230 -0
- elasticsearch/dsl/_sync/update_by_query.py +45 -0
- elasticsearch/dsl/aggs.py +3734 -0
- elasticsearch/dsl/analysis.py +341 -0
- elasticsearch/dsl/async_connections.py +37 -0
- elasticsearch/dsl/connections.py +142 -0
- elasticsearch/dsl/document.py +20 -0
- elasticsearch/dsl/document_base.py +444 -0
- elasticsearch/dsl/exceptions.py +32 -0
- elasticsearch/dsl/faceted_search.py +28 -0
- elasticsearch/dsl/faceted_search_base.py +489 -0
- elasticsearch/dsl/field.py +4392 -0
- elasticsearch/dsl/function.py +180 -0
- elasticsearch/dsl/index.py +23 -0
- elasticsearch/dsl/index_base.py +178 -0
- elasticsearch/dsl/mapping.py +19 -0
- elasticsearch/dsl/mapping_base.py +219 -0
- elasticsearch/dsl/query.py +2822 -0
- elasticsearch/dsl/response/__init__.py +388 -0
- elasticsearch/dsl/response/aggs.py +100 -0
- elasticsearch/dsl/response/hit.py +53 -0
- elasticsearch/dsl/search.py +20 -0
- elasticsearch/dsl/search_base.py +1053 -0
- elasticsearch/dsl/serializer.py +34 -0
- elasticsearch/dsl/types.py +6453 -0
- elasticsearch/dsl/update_by_query.py +19 -0
- elasticsearch/dsl/update_by_query_base.py +149 -0
- elasticsearch/dsl/utils.py +687 -0
- elasticsearch/dsl/wrappers.py +144 -0
- elasticsearch/helpers/actions.py +1 -1
- elasticsearch/helpers/vectorstore/_async/strategies.py +12 -12
- elasticsearch/helpers/vectorstore/_sync/strategies.py +12 -12
- elasticsearch/helpers/vectorstore/_sync/vectorstore.py +4 -1
- {elasticsearch-8.17.1.dist-info → elasticsearch-9.0.0.dist-info}/METADATA +12 -15
- elasticsearch-9.0.0.dist-info/RECORD +160 -0
- elasticsearch/transport.py +0 -57
- elasticsearch-8.17.1.dist-info/RECORD +0 -119
- {elasticsearch-8.17.1.dist-info → elasticsearch-9.0.0.dist-info}/WHEEL +0 -0
- {elasticsearch-8.17.1.dist-info → elasticsearch-9.0.0.dist-info}/licenses/LICENSE +0 -0
- {elasticsearch-8.17.1.dist-info → elasticsearch-9.0.0.dist-info}/licenses/NOTICE +0 -0
|
@@ -33,15 +33,23 @@ class CcrClient(NamespacedClient):
|
|
|
33
33
|
error_trace: t.Optional[bool] = None,
|
|
34
34
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
35
35
|
human: t.Optional[bool] = None,
|
|
36
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
36
37
|
pretty: t.Optional[bool] = None,
|
|
37
38
|
) -> ObjectApiResponse[t.Any]:
|
|
38
39
|
"""
|
|
39
|
-
|
|
40
|
-
auto-follow patterns.
|
|
40
|
+
.. raw:: html
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
<p>Delete auto-follow patterns.</p>
|
|
43
|
+
<p>Delete a collection of cross-cluster replication auto-follow patterns.</p>
|
|
43
44
|
|
|
44
|
-
|
|
45
|
+
|
|
46
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-delete-auto-follow-pattern>`_
|
|
47
|
+
|
|
48
|
+
:param name: The auto-follow pattern collection to delete.
|
|
49
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
50
|
+
If the master node is not available before the timeout expires, the request
|
|
51
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
52
|
+
request should never timeout.
|
|
45
53
|
"""
|
|
46
54
|
if name in SKIP_IN_PATH:
|
|
47
55
|
raise ValueError("Empty value passed for parameter 'name'")
|
|
@@ -54,6 +62,8 @@ class CcrClient(NamespacedClient):
|
|
|
54
62
|
__query["filter_path"] = filter_path
|
|
55
63
|
if human is not None:
|
|
56
64
|
__query["human"] = human
|
|
65
|
+
if master_timeout is not None:
|
|
66
|
+
__query["master_timeout"] = master_timeout
|
|
57
67
|
if pretty is not None:
|
|
58
68
|
__query["pretty"] = pretty
|
|
59
69
|
__headers = {"accept": "application/json"}
|
|
@@ -69,6 +79,8 @@ class CcrClient(NamespacedClient):
|
|
|
69
79
|
@_rewrite_parameters(
|
|
70
80
|
body_fields=(
|
|
71
81
|
"leader_index",
|
|
82
|
+
"remote_cluster",
|
|
83
|
+
"data_stream_name",
|
|
72
84
|
"max_outstanding_read_requests",
|
|
73
85
|
"max_outstanding_write_requests",
|
|
74
86
|
"max_read_request_operation_count",
|
|
@@ -79,62 +91,93 @@ class CcrClient(NamespacedClient):
|
|
|
79
91
|
"max_write_request_operation_count",
|
|
80
92
|
"max_write_request_size",
|
|
81
93
|
"read_poll_timeout",
|
|
82
|
-
"
|
|
94
|
+
"settings",
|
|
83
95
|
),
|
|
84
96
|
)
|
|
85
97
|
def follow(
|
|
86
98
|
self,
|
|
87
99
|
*,
|
|
88
100
|
index: str,
|
|
101
|
+
leader_index: t.Optional[str] = None,
|
|
102
|
+
remote_cluster: t.Optional[str] = None,
|
|
103
|
+
data_stream_name: t.Optional[str] = None,
|
|
89
104
|
error_trace: t.Optional[bool] = None,
|
|
90
105
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
91
106
|
human: t.Optional[bool] = None,
|
|
92
|
-
|
|
107
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
93
108
|
max_outstanding_read_requests: t.Optional[int] = None,
|
|
94
109
|
max_outstanding_write_requests: t.Optional[int] = None,
|
|
95
110
|
max_read_request_operation_count: t.Optional[int] = None,
|
|
96
|
-
max_read_request_size: t.Optional[str] = None,
|
|
111
|
+
max_read_request_size: t.Optional[t.Union[int, str]] = None,
|
|
97
112
|
max_retry_delay: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
98
113
|
max_write_buffer_count: t.Optional[int] = None,
|
|
99
|
-
max_write_buffer_size: t.Optional[str] = None,
|
|
114
|
+
max_write_buffer_size: t.Optional[t.Union[int, str]] = None,
|
|
100
115
|
max_write_request_operation_count: t.Optional[int] = None,
|
|
101
|
-
max_write_request_size: t.Optional[str] = None,
|
|
116
|
+
max_write_request_size: t.Optional[t.Union[int, str]] = None,
|
|
102
117
|
pretty: t.Optional[bool] = None,
|
|
103
118
|
read_poll_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
104
|
-
|
|
119
|
+
settings: t.Optional[t.Mapping[str, t.Any]] = None,
|
|
105
120
|
wait_for_active_shards: t.Optional[
|
|
106
121
|
t.Union[int, t.Union[str, t.Literal["all", "index-setting"]]]
|
|
107
122
|
] = None,
|
|
108
123
|
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
109
124
|
) -> ObjectApiResponse[t.Any]:
|
|
110
125
|
"""
|
|
111
|
-
|
|
112
|
-
a specific leader index. When the API returns, the follower index exists and
|
|
113
|
-
cross-cluster replication starts replicating operations from the leader index
|
|
114
|
-
to the follower index.
|
|
126
|
+
.. raw:: html
|
|
115
127
|
|
|
116
|
-
|
|
128
|
+
<p>Create a follower.
|
|
129
|
+
Create a cross-cluster replication follower index that follows a specific leader index.
|
|
130
|
+
When the API returns, the follower index exists and cross-cluster replication starts replicating operations from the leader index to the follower index.</p>
|
|
117
131
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
:param
|
|
122
|
-
:param
|
|
123
|
-
:param
|
|
124
|
-
:param
|
|
125
|
-
|
|
126
|
-
:param
|
|
127
|
-
:param
|
|
128
|
-
|
|
129
|
-
:param
|
|
130
|
-
|
|
131
|
-
:param
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
132
|
+
|
|
133
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-follow>`_
|
|
134
|
+
|
|
135
|
+
:param index: The name of the follower index.
|
|
136
|
+
:param leader_index: The name of the index in the leader cluster to follow.
|
|
137
|
+
:param remote_cluster: The remote cluster containing the leader index.
|
|
138
|
+
:param data_stream_name: If the leader index is part of a data stream, the name
|
|
139
|
+
to which the local data stream for the followed index should be renamed.
|
|
140
|
+
:param master_timeout: Period to wait for a connection to the master node.
|
|
141
|
+
:param max_outstanding_read_requests: The maximum number of outstanding reads
|
|
142
|
+
requests from the remote cluster.
|
|
143
|
+
:param max_outstanding_write_requests: The maximum number of outstanding write
|
|
144
|
+
requests on the follower.
|
|
145
|
+
:param max_read_request_operation_count: The maximum number of operations to
|
|
146
|
+
pull per read from the remote cluster.
|
|
147
|
+
:param max_read_request_size: The maximum size in bytes of per read of a batch
|
|
148
|
+
of operations pulled from the remote cluster.
|
|
149
|
+
:param max_retry_delay: The maximum time to wait before retrying an operation
|
|
150
|
+
that failed exceptionally. An exponential backoff strategy is employed when
|
|
151
|
+
retrying.
|
|
152
|
+
:param max_write_buffer_count: The maximum number of operations that can be queued
|
|
153
|
+
for writing. When this limit is reached, reads from the remote cluster will
|
|
154
|
+
be deferred until the number of queued operations goes below the limit.
|
|
155
|
+
:param max_write_buffer_size: The maximum total bytes of operations that can
|
|
156
|
+
be queued for writing. When this limit is reached, reads from the remote
|
|
157
|
+
cluster will be deferred until the total bytes of queued operations goes
|
|
158
|
+
below the limit.
|
|
159
|
+
:param max_write_request_operation_count: The maximum number of operations per
|
|
160
|
+
bulk write request executed on the follower.
|
|
161
|
+
:param max_write_request_size: The maximum total bytes of operations per bulk
|
|
162
|
+
write request executed on the follower.
|
|
163
|
+
:param read_poll_timeout: The maximum time to wait for new operations on the
|
|
164
|
+
remote cluster when the follower index is synchronized with the leader index.
|
|
165
|
+
When the timeout has elapsed, the poll for operations will return to the
|
|
166
|
+
follower so that it can update some statistics. Then the follower will immediately
|
|
167
|
+
attempt to read from the leader again.
|
|
168
|
+
:param settings: Settings to override from the leader index.
|
|
169
|
+
:param wait_for_active_shards: Specifies the number of shards to wait on being
|
|
170
|
+
active before responding. This defaults to waiting on none of the shards
|
|
171
|
+
to be active. A shard must be restored from the leader index before being
|
|
172
|
+
active. Restoring a follower shard requires transferring all the remote Lucene
|
|
173
|
+
segment files to the follower index.
|
|
135
174
|
"""
|
|
136
175
|
if index in SKIP_IN_PATH:
|
|
137
176
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
177
|
+
if leader_index is None and body is None:
|
|
178
|
+
raise ValueError("Empty value passed for parameter 'leader_index'")
|
|
179
|
+
if remote_cluster is None and body is None:
|
|
180
|
+
raise ValueError("Empty value passed for parameter 'remote_cluster'")
|
|
138
181
|
__path_parts: t.Dict[str, str] = {"index": _quote(index)}
|
|
139
182
|
__path = f'/{__path_parts["index"]}/_ccr/follow'
|
|
140
183
|
__query: t.Dict[str, t.Any] = {}
|
|
@@ -145,6 +188,8 @@ class CcrClient(NamespacedClient):
|
|
|
145
188
|
__query["filter_path"] = filter_path
|
|
146
189
|
if human is not None:
|
|
147
190
|
__query["human"] = human
|
|
191
|
+
if master_timeout is not None:
|
|
192
|
+
__query["master_timeout"] = master_timeout
|
|
148
193
|
if pretty is not None:
|
|
149
194
|
__query["pretty"] = pretty
|
|
150
195
|
if wait_for_active_shards is not None:
|
|
@@ -152,6 +197,10 @@ class CcrClient(NamespacedClient):
|
|
|
152
197
|
if not __body:
|
|
153
198
|
if leader_index is not None:
|
|
154
199
|
__body["leader_index"] = leader_index
|
|
200
|
+
if remote_cluster is not None:
|
|
201
|
+
__body["remote_cluster"] = remote_cluster
|
|
202
|
+
if data_stream_name is not None:
|
|
203
|
+
__body["data_stream_name"] = data_stream_name
|
|
155
204
|
if max_outstanding_read_requests is not None:
|
|
156
205
|
__body["max_outstanding_read_requests"] = max_outstanding_read_requests
|
|
157
206
|
if max_outstanding_write_requests is not None:
|
|
@@ -178,8 +227,8 @@ class CcrClient(NamespacedClient):
|
|
|
178
227
|
__body["max_write_request_size"] = max_write_request_size
|
|
179
228
|
if read_poll_timeout is not None:
|
|
180
229
|
__body["read_poll_timeout"] = read_poll_timeout
|
|
181
|
-
if
|
|
182
|
-
__body["
|
|
230
|
+
if settings is not None:
|
|
231
|
+
__body["settings"] = settings
|
|
183
232
|
__headers = {"accept": "application/json", "content-type": "application/json"}
|
|
184
233
|
return self.perform_request( # type: ignore[return-value]
|
|
185
234
|
"PUT",
|
|
@@ -199,18 +248,24 @@ class CcrClient(NamespacedClient):
|
|
|
199
248
|
error_trace: t.Optional[bool] = None,
|
|
200
249
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
201
250
|
human: t.Optional[bool] = None,
|
|
251
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
202
252
|
pretty: t.Optional[bool] = None,
|
|
203
253
|
) -> ObjectApiResponse[t.Any]:
|
|
204
254
|
"""
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
255
|
+
.. raw:: html
|
|
256
|
+
|
|
257
|
+
<p>Get follower information.</p>
|
|
258
|
+
<p>Get information about all cross-cluster replication follower indices.
|
|
259
|
+
For example, the results include follower index names, leader index names, replication options, and whether the follower indices are active or paused.</p>
|
|
209
260
|
|
|
210
|
-
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ccr-get-follow-info.html>`_
|
|
211
261
|
|
|
212
|
-
|
|
213
|
-
|
|
262
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-follow-info>`_
|
|
263
|
+
|
|
264
|
+
:param index: A comma-delimited list of follower index patterns.
|
|
265
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
266
|
+
If the master node is not available before the timeout expires, the request
|
|
267
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
268
|
+
request should never timeout.
|
|
214
269
|
"""
|
|
215
270
|
if index in SKIP_IN_PATH:
|
|
216
271
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -223,6 +278,8 @@ class CcrClient(NamespacedClient):
|
|
|
223
278
|
__query["filter_path"] = filter_path
|
|
224
279
|
if human is not None:
|
|
225
280
|
__query["human"] = human
|
|
281
|
+
if master_timeout is not None:
|
|
282
|
+
__query["master_timeout"] = master_timeout
|
|
226
283
|
if pretty is not None:
|
|
227
284
|
__query["pretty"] = pretty
|
|
228
285
|
__headers = {"accept": "application/json"}
|
|
@@ -244,16 +301,21 @@ class CcrClient(NamespacedClient):
|
|
|
244
301
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
245
302
|
human: t.Optional[bool] = None,
|
|
246
303
|
pretty: t.Optional[bool] = None,
|
|
304
|
+
timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
247
305
|
) -> ObjectApiResponse[t.Any]:
|
|
248
306
|
"""
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
307
|
+
.. raw:: html
|
|
308
|
+
|
|
309
|
+
<p>Get follower stats.</p>
|
|
310
|
+
<p>Get cross-cluster replication follower stats.
|
|
311
|
+
The API returns shard-level stats about the "following tasks" associated with each shard for the specified indices.</p>
|
|
312
|
+
|
|
252
313
|
|
|
253
|
-
`<https://www.elastic.co/
|
|
314
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-follow-stats>`_
|
|
254
315
|
|
|
255
|
-
:param index: A comma-
|
|
256
|
-
|
|
316
|
+
:param index: A comma-delimited list of index patterns.
|
|
317
|
+
:param timeout: The period to wait for a response. If no response is received
|
|
318
|
+
before the timeout expires, the request fails and returns an error.
|
|
257
319
|
"""
|
|
258
320
|
if index in SKIP_IN_PATH:
|
|
259
321
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -268,6 +330,8 @@ class CcrClient(NamespacedClient):
|
|
|
268
330
|
__query["human"] = human
|
|
269
331
|
if pretty is not None:
|
|
270
332
|
__query["pretty"] = pretty
|
|
333
|
+
if timeout is not None:
|
|
334
|
+
__query["timeout"] = timeout
|
|
271
335
|
__headers = {"accept": "application/json"}
|
|
272
336
|
return self.perform_request( # type: ignore[return-value]
|
|
273
337
|
"GET",
|
|
@@ -298,28 +362,25 @@ class CcrClient(NamespacedClient):
|
|
|
298
362
|
human: t.Optional[bool] = None,
|
|
299
363
|
leader_remote_cluster: t.Optional[str] = None,
|
|
300
364
|
pretty: t.Optional[bool] = None,
|
|
365
|
+
timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
301
366
|
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
302
367
|
) -> ObjectApiResponse[t.Any]:
|
|
303
368
|
"""
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
API is to handle the case of failure to remove the following retention leases
|
|
320
|
-
after the unfollow API is invoked.
|
|
321
|
-
|
|
322
|
-
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ccr-post-forget-follower.html>`_
|
|
369
|
+
.. raw:: html
|
|
370
|
+
|
|
371
|
+
<p>Forget a follower.
|
|
372
|
+
Remove the cross-cluster replication follower retention leases from the leader.</p>
|
|
373
|
+
<p>A following index takes out retention leases on its leader index.
|
|
374
|
+
These leases are used to increase the likelihood that the shards of the leader index retain the history of operations that the shards of the following index need to run replication.
|
|
375
|
+
When a follower index is converted to a regular index by the unfollow API (either by directly calling the API or by index lifecycle management tasks), these leases are removed.
|
|
376
|
+
However, removal of the leases can fail, for example when the remote cluster containing the leader index is unavailable.
|
|
377
|
+
While the leases will eventually expire on their own, their extended existence can cause the leader index to hold more history than necessary and prevent index lifecycle management from performing some operations on the leader index.
|
|
378
|
+
This API exists to enable manually removing the leases when the unfollow API is unable to do so.</p>
|
|
379
|
+
<p>NOTE: This API does not stop replication by a following index. If you use this API with a follower index that is still actively following, the following index will add back retention leases on the leader.
|
|
380
|
+
The only purpose of this API is to handle the case of failure to remove the following retention leases after the unfollow API is invoked.</p>
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-forget-follower>`_
|
|
323
384
|
|
|
324
385
|
:param index: the name of the leader index for which specified follower retention
|
|
325
386
|
leases should be removed
|
|
@@ -327,6 +388,8 @@ class CcrClient(NamespacedClient):
|
|
|
327
388
|
:param follower_index:
|
|
328
389
|
:param follower_index_uuid:
|
|
329
390
|
:param leader_remote_cluster:
|
|
391
|
+
:param timeout: Period to wait for a response. If no response is received before
|
|
392
|
+
the timeout expires, the request fails and returns an error.
|
|
330
393
|
"""
|
|
331
394
|
if index in SKIP_IN_PATH:
|
|
332
395
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -342,6 +405,8 @@ class CcrClient(NamespacedClient):
|
|
|
342
405
|
__query["human"] = human
|
|
343
406
|
if pretty is not None:
|
|
344
407
|
__query["pretty"] = pretty
|
|
408
|
+
if timeout is not None:
|
|
409
|
+
__query["timeout"] = timeout
|
|
345
410
|
if not __body:
|
|
346
411
|
if follower_cluster is not None:
|
|
347
412
|
__body["follower_cluster"] = follower_cluster
|
|
@@ -370,15 +435,24 @@ class CcrClient(NamespacedClient):
|
|
|
370
435
|
error_trace: t.Optional[bool] = None,
|
|
371
436
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
372
437
|
human: t.Optional[bool] = None,
|
|
438
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
373
439
|
pretty: t.Optional[bool] = None,
|
|
374
440
|
) -> ObjectApiResponse[t.Any]:
|
|
375
441
|
"""
|
|
376
|
-
|
|
442
|
+
.. raw:: html
|
|
443
|
+
|
|
444
|
+
<p>Get auto-follow patterns.</p>
|
|
445
|
+
<p>Get cross-cluster replication auto-follow patterns.</p>
|
|
446
|
+
|
|
377
447
|
|
|
378
|
-
`<https://www.elastic.co/
|
|
448
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-get-auto-follow-pattern-1>`_
|
|
379
449
|
|
|
380
|
-
:param name:
|
|
381
|
-
|
|
450
|
+
:param name: The auto-follow pattern collection that you want to retrieve. If
|
|
451
|
+
you do not specify a name, the API returns information for all collections.
|
|
452
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
453
|
+
If the master node is not available before the timeout expires, the request
|
|
454
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
455
|
+
request should never timeout.
|
|
382
456
|
"""
|
|
383
457
|
__path_parts: t.Dict[str, str]
|
|
384
458
|
if name not in SKIP_IN_PATH:
|
|
@@ -394,6 +468,8 @@ class CcrClient(NamespacedClient):
|
|
|
394
468
|
__query["filter_path"] = filter_path
|
|
395
469
|
if human is not None:
|
|
396
470
|
__query["human"] = human
|
|
471
|
+
if master_timeout is not None:
|
|
472
|
+
__query["master_timeout"] = master_timeout
|
|
397
473
|
if pretty is not None:
|
|
398
474
|
__query["pretty"] = pretty
|
|
399
475
|
__headers = {"accept": "application/json"}
|
|
@@ -414,22 +490,28 @@ class CcrClient(NamespacedClient):
|
|
|
414
490
|
error_trace: t.Optional[bool] = None,
|
|
415
491
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
416
492
|
human: t.Optional[bool] = None,
|
|
493
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
417
494
|
pretty: t.Optional[bool] = None,
|
|
418
495
|
) -> ObjectApiResponse[t.Any]:
|
|
419
496
|
"""
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
497
|
+
.. raw:: html
|
|
498
|
+
|
|
499
|
+
<p>Pause an auto-follow pattern.</p>
|
|
500
|
+
<p>Pause a cross-cluster replication auto-follow pattern.
|
|
501
|
+
When the API returns, the auto-follow pattern is inactive.
|
|
502
|
+
New indices that are created on the remote cluster and match the auto-follow patterns are ignored.</p>
|
|
503
|
+
<p>You can resume auto-following with the resume auto-follow pattern API.
|
|
504
|
+
When it resumes, the auto-follow pattern is active again and automatically configures follower indices for newly created indices on the remote cluster that match its patterns.
|
|
505
|
+
Remote indices that were created while the pattern was paused will also be followed, unless they have been deleted or closed in the interim.</p>
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-pause-auto-follow-pattern>`_
|
|
509
|
+
|
|
510
|
+
:param name: The name of the auto-follow pattern to pause.
|
|
511
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
512
|
+
If the master node is not available before the timeout expires, the request
|
|
513
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
514
|
+
request should never timeout.
|
|
433
515
|
"""
|
|
434
516
|
if name in SKIP_IN_PATH:
|
|
435
517
|
raise ValueError("Empty value passed for parameter 'name'")
|
|
@@ -442,6 +524,8 @@ class CcrClient(NamespacedClient):
|
|
|
442
524
|
__query["filter_path"] = filter_path
|
|
443
525
|
if human is not None:
|
|
444
526
|
__query["human"] = human
|
|
527
|
+
if master_timeout is not None:
|
|
528
|
+
__query["master_timeout"] = master_timeout
|
|
445
529
|
if pretty is not None:
|
|
446
530
|
__query["pretty"] = pretty
|
|
447
531
|
__headers = {"accept": "application/json"}
|
|
@@ -462,18 +546,26 @@ class CcrClient(NamespacedClient):
|
|
|
462
546
|
error_trace: t.Optional[bool] = None,
|
|
463
547
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
464
548
|
human: t.Optional[bool] = None,
|
|
549
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
465
550
|
pretty: t.Optional[bool] = None,
|
|
466
551
|
) -> ObjectApiResponse[t.Any]:
|
|
467
552
|
"""
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
553
|
+
.. raw:: html
|
|
554
|
+
|
|
555
|
+
<p>Pause a follower.</p>
|
|
556
|
+
<p>Pause a cross-cluster replication follower index.
|
|
557
|
+
The follower index will not fetch any additional operations from the leader index.
|
|
558
|
+
You can resume following with the resume follower API.
|
|
559
|
+
You can pause and resume a follower index to change the configuration of the following task.</p>
|
|
560
|
+
|
|
472
561
|
|
|
473
|
-
`<https://www.elastic.co/
|
|
562
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-pause-follow>`_
|
|
474
563
|
|
|
475
|
-
:param index: The name of the follower index
|
|
476
|
-
|
|
564
|
+
:param index: The name of the follower index.
|
|
565
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
566
|
+
If the master node is not available before the timeout expires, the request
|
|
567
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
568
|
+
request should never timeout.
|
|
477
569
|
"""
|
|
478
570
|
if index in SKIP_IN_PATH:
|
|
479
571
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -486,6 +578,8 @@ class CcrClient(NamespacedClient):
|
|
|
486
578
|
__query["filter_path"] = filter_path
|
|
487
579
|
if human is not None:
|
|
488
580
|
__query["human"] = human
|
|
581
|
+
if master_timeout is not None:
|
|
582
|
+
__query["master_timeout"] = master_timeout
|
|
489
583
|
if pretty is not None:
|
|
490
584
|
__query["pretty"] = pretty
|
|
491
585
|
__headers = {"accept": "application/json"}
|
|
@@ -528,6 +622,7 @@ class CcrClient(NamespacedClient):
|
|
|
528
622
|
human: t.Optional[bool] = None,
|
|
529
623
|
leader_index_exclusion_patterns: t.Optional[t.Sequence[str]] = None,
|
|
530
624
|
leader_index_patterns: t.Optional[t.Sequence[str]] = None,
|
|
625
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
531
626
|
max_outstanding_read_requests: t.Optional[int] = None,
|
|
532
627
|
max_outstanding_write_requests: t.Optional[int] = None,
|
|
533
628
|
max_read_request_operation_count: t.Optional[int] = None,
|
|
@@ -543,16 +638,17 @@ class CcrClient(NamespacedClient):
|
|
|
543
638
|
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
544
639
|
) -> ObjectApiResponse[t.Any]:
|
|
545
640
|
"""
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
641
|
+
.. raw:: html
|
|
642
|
+
|
|
643
|
+
<p>Create or update auto-follow patterns.
|
|
644
|
+
Create a collection of cross-cluster replication auto-follow patterns for a remote cluster.
|
|
645
|
+
Newly created indices on the remote cluster that match any of the patterns are automatically configured as follower indices.
|
|
646
|
+
Indices on the remote cluster that were created before the auto-follow pattern was created will not be auto-followed even if they match the pattern.</p>
|
|
647
|
+
<p>This API can also be used to update auto-follow patterns.
|
|
648
|
+
NOTE: Follower indices that were configured automatically before updating an auto-follow pattern will remain unchanged even if they do not match against the new patterns.</p>
|
|
649
|
+
|
|
554
650
|
|
|
555
|
-
`<https://www.elastic.co/
|
|
651
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-put-auto-follow-pattern>`_
|
|
556
652
|
|
|
557
653
|
:param name: The name of the collection of auto-follow patterns.
|
|
558
654
|
:param remote_cluster: The remote cluster containing the leader indices to match
|
|
@@ -567,6 +663,7 @@ class CcrClient(NamespacedClient):
|
|
|
567
663
|
or more leader_index_exclusion_patterns won’t be followed.
|
|
568
664
|
:param leader_index_patterns: An array of simple index patterns to match against
|
|
569
665
|
indices in the remote cluster specified by the remote_cluster field.
|
|
666
|
+
:param master_timeout: Period to wait for a connection to the master node.
|
|
570
667
|
:param max_outstanding_read_requests: The maximum number of outstanding reads
|
|
571
668
|
requests from the remote cluster.
|
|
572
669
|
:param max_outstanding_write_requests: The maximum number of outstanding reads
|
|
@@ -611,6 +708,8 @@ class CcrClient(NamespacedClient):
|
|
|
611
708
|
__query["filter_path"] = filter_path
|
|
612
709
|
if human is not None:
|
|
613
710
|
__query["human"] = human
|
|
711
|
+
if master_timeout is not None:
|
|
712
|
+
__query["master_timeout"] = master_timeout
|
|
614
713
|
if pretty is not None:
|
|
615
714
|
__query["pretty"] = pretty
|
|
616
715
|
if not __body:
|
|
@@ -671,19 +770,25 @@ class CcrClient(NamespacedClient):
|
|
|
671
770
|
error_trace: t.Optional[bool] = None,
|
|
672
771
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
673
772
|
human: t.Optional[bool] = None,
|
|
773
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
674
774
|
pretty: t.Optional[bool] = None,
|
|
675
775
|
) -> ObjectApiResponse[t.Any]:
|
|
676
776
|
"""
|
|
677
|
-
|
|
678
|
-
pattern that was paused. The auto-follow pattern will resume configuring following
|
|
679
|
-
indices for newly created indices that match its patterns on the remote cluster.
|
|
680
|
-
Remote indices created while the pattern was paused will also be followed unless
|
|
681
|
-
they have been deleted or closed in the interim.
|
|
777
|
+
.. raw:: html
|
|
682
778
|
|
|
683
|
-
|
|
779
|
+
<p>Resume an auto-follow pattern.</p>
|
|
780
|
+
<p>Resume a cross-cluster replication auto-follow pattern that was paused.
|
|
781
|
+
The auto-follow pattern will resume configuring following indices for newly created indices that match its patterns on the remote cluster.
|
|
782
|
+
Remote indices created while the pattern was paused will also be followed unless they have been deleted or closed in the interim.</p>
|
|
684
783
|
|
|
685
|
-
|
|
686
|
-
|
|
784
|
+
|
|
785
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-resume-auto-follow-pattern>`_
|
|
786
|
+
|
|
787
|
+
:param name: The name of the auto-follow pattern to resume.
|
|
788
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
789
|
+
If the master node is not available before the timeout expires, the request
|
|
790
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
791
|
+
request should never timeout.
|
|
687
792
|
"""
|
|
688
793
|
if name in SKIP_IN_PATH:
|
|
689
794
|
raise ValueError("Empty value passed for parameter 'name'")
|
|
@@ -696,6 +801,8 @@ class CcrClient(NamespacedClient):
|
|
|
696
801
|
__query["filter_path"] = filter_path
|
|
697
802
|
if human is not None:
|
|
698
803
|
__query["human"] = human
|
|
804
|
+
if master_timeout is not None:
|
|
805
|
+
__query["master_timeout"] = master_timeout
|
|
699
806
|
if pretty is not None:
|
|
700
807
|
__query["pretty"] = pretty
|
|
701
808
|
__headers = {"accept": "application/json"}
|
|
@@ -729,6 +836,7 @@ class CcrClient(NamespacedClient):
|
|
|
729
836
|
error_trace: t.Optional[bool] = None,
|
|
730
837
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
731
838
|
human: t.Optional[bool] = None,
|
|
839
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
732
840
|
max_outstanding_read_requests: t.Optional[int] = None,
|
|
733
841
|
max_outstanding_write_requests: t.Optional[int] = None,
|
|
734
842
|
max_read_request_operation_count: t.Optional[int] = None,
|
|
@@ -743,15 +851,19 @@ class CcrClient(NamespacedClient):
|
|
|
743
851
|
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
744
852
|
) -> ObjectApiResponse[t.Any]:
|
|
745
853
|
"""
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
854
|
+
.. raw:: html
|
|
855
|
+
|
|
856
|
+
<p>Resume a follower.
|
|
857
|
+
Resume a cross-cluster replication follower index that was paused.
|
|
858
|
+
The follower index could have been paused with the pause follower API.
|
|
859
|
+
Alternatively it could be paused due to replication that cannot be retried due to failures during following tasks.
|
|
860
|
+
When this API returns, the follower index will resume fetching operations from the leader index.</p>
|
|
751
861
|
|
|
752
|
-
|
|
862
|
+
|
|
863
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-resume-follow>`_
|
|
753
864
|
|
|
754
865
|
:param index: The name of the follow index to resume following.
|
|
866
|
+
:param master_timeout: Period to wait for a connection to the master node.
|
|
755
867
|
:param max_outstanding_read_requests:
|
|
756
868
|
:param max_outstanding_write_requests:
|
|
757
869
|
:param max_read_request_operation_count:
|
|
@@ -775,6 +887,8 @@ class CcrClient(NamespacedClient):
|
|
|
775
887
|
__query["filter_path"] = filter_path
|
|
776
888
|
if human is not None:
|
|
777
889
|
__query["human"] = human
|
|
890
|
+
if master_timeout is not None:
|
|
891
|
+
__query["master_timeout"] = master_timeout
|
|
778
892
|
if pretty is not None:
|
|
779
893
|
__query["pretty"] = pretty
|
|
780
894
|
if not __body:
|
|
@@ -826,13 +940,25 @@ class CcrClient(NamespacedClient):
|
|
|
826
940
|
error_trace: t.Optional[bool] = None,
|
|
827
941
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
828
942
|
human: t.Optional[bool] = None,
|
|
943
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
829
944
|
pretty: t.Optional[bool] = None,
|
|
945
|
+
timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
830
946
|
) -> ObjectApiResponse[t.Any]:
|
|
831
947
|
"""
|
|
832
|
-
|
|
833
|
-
|
|
948
|
+
.. raw:: html
|
|
949
|
+
|
|
950
|
+
<p>Get cross-cluster replication stats.</p>
|
|
951
|
+
<p>This API returns stats about auto-following and the same shard-level stats as the get follower stats API.</p>
|
|
952
|
+
|
|
834
953
|
|
|
835
|
-
`<https://www.elastic.co/
|
|
954
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-stats>`_
|
|
955
|
+
|
|
956
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
957
|
+
If the master node is not available before the timeout expires, the request
|
|
958
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
959
|
+
request should never timeout.
|
|
960
|
+
:param timeout: The period to wait for a response. If no response is received
|
|
961
|
+
before the timeout expires, the request fails and returns an error.
|
|
836
962
|
"""
|
|
837
963
|
__path_parts: t.Dict[str, str] = {}
|
|
838
964
|
__path = "/_ccr/stats"
|
|
@@ -843,8 +969,12 @@ class CcrClient(NamespacedClient):
|
|
|
843
969
|
__query["filter_path"] = filter_path
|
|
844
970
|
if human is not None:
|
|
845
971
|
__query["human"] = human
|
|
972
|
+
if master_timeout is not None:
|
|
973
|
+
__query["master_timeout"] = master_timeout
|
|
846
974
|
if pretty is not None:
|
|
847
975
|
__query["pretty"] = pretty
|
|
976
|
+
if timeout is not None:
|
|
977
|
+
__query["timeout"] = timeout
|
|
848
978
|
__headers = {"accept": "application/json"}
|
|
849
979
|
return self.perform_request( # type: ignore[return-value]
|
|
850
980
|
"GET",
|
|
@@ -863,21 +993,29 @@ class CcrClient(NamespacedClient):
|
|
|
863
993
|
error_trace: t.Optional[bool] = None,
|
|
864
994
|
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
865
995
|
human: t.Optional[bool] = None,
|
|
996
|
+
master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
866
997
|
pretty: t.Optional[bool] = None,
|
|
867
998
|
) -> ObjectApiResponse[t.Any]:
|
|
868
999
|
"""
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
1000
|
+
.. raw:: html
|
|
1001
|
+
|
|
1002
|
+
<p>Unfollow an index.</p>
|
|
1003
|
+
<p>Convert a cross-cluster replication follower index to a regular index.
|
|
1004
|
+
The API stops the following task associated with a follower index and removes index metadata and settings associated with cross-cluster replication.
|
|
1005
|
+
The follower index must be paused and closed before you call the unfollow API.</p>
|
|
1006
|
+
<blockquote>
|
|
1007
|
+
<p>info
|
|
1008
|
+
Currently cross-cluster replication does not support converting an existing regular index to a follower index. Converting a follower index to a regular index is an irreversible operation.</p>
|
|
1009
|
+
</blockquote>
|
|
1010
|
+
|
|
1011
|
+
|
|
1012
|
+
`<https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-ccr-unfollow>`_
|
|
1013
|
+
|
|
1014
|
+
:param index: The name of the follower index.
|
|
1015
|
+
:param master_timeout: The period to wait for a connection to the master node.
|
|
1016
|
+
If the master node is not available before the timeout expires, the request
|
|
1017
|
+
fails and returns an error. It can also be set to `-1` to indicate that the
|
|
1018
|
+
request should never timeout.
|
|
881
1019
|
"""
|
|
882
1020
|
if index in SKIP_IN_PATH:
|
|
883
1021
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -890,6 +1028,8 @@ class CcrClient(NamespacedClient):
|
|
|
890
1028
|
__query["filter_path"] = filter_path
|
|
891
1029
|
if human is not None:
|
|
892
1030
|
__query["human"] = human
|
|
1031
|
+
if master_timeout is not None:
|
|
1032
|
+
__query["master_timeout"] = master_timeout
|
|
893
1033
|
if pretty is not None:
|
|
894
1034
|
__query["pretty"] = pretty
|
|
895
1035
|
__headers = {"accept": "application/json"}
|