mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-04-24 23:27:25 -04:00
Goodbye and thank you synced flush! (#50882)
Synced flush was a brilliant idea. It supports instant recoveries with a quite small implementation. However, with the presence of sequence numbers and retention leases, it is no longer needed. This change removes it from 8.0. Relates #5077
This commit is contained in:
parent
adb56e5842
commit
09b46c8646
53 changed files with 290 additions and 3731 deletions
|
@ -1,62 +0,0 @@
|
|||
--
|
||||
:api: flush-synced
|
||||
:request: SyncedFlushRequest
|
||||
:response: SyncedFlushResponse
|
||||
--
|
||||
|
||||
[id="{upid}-{api}"]
|
||||
=== Flush Synced API
|
||||
|
||||
[id="{upid}-{api}-request"]
|
||||
==== Flush Synced Request
|
||||
|
||||
A +{request}+ can be applied to one or more indices, or even on `_all` the indices:
|
||||
|
||||
["source","java",subs="attributes,callouts,macros"]
|
||||
--------------------------------------------------
|
||||
include-tagged::{doc-tests-file}[{api}-request]
|
||||
--------------------------------------------------
|
||||
<1> Flush synced one index
|
||||
<2> Flush synced multiple indices
|
||||
<3> Flush synced all the indices
|
||||
|
||||
==== Optional arguments
|
||||
|
||||
["source","java",subs="attributes,callouts,macros"]
|
||||
--------------------------------------------------
|
||||
include-tagged::{doc-tests-file}[{api}-request-indicesOptions]
|
||||
--------------------------------------------------
|
||||
<1> Setting `IndicesOptions` controls how unavailable indices are resolved and
|
||||
how wildcard expressions are expanded
|
||||
|
||||
include::../execution.asciidoc[]
|
||||
|
||||
[id="{upid}-{api}-response"]
|
||||
==== Flush Synced Response
|
||||
|
||||
The returned +{response}+ allows to retrieve information about the
|
||||
executed operation as follows:
|
||||
|
||||
["source","java",subs="attributes,callouts,macros"]
|
||||
--------------------------------------------------
|
||||
include-tagged::{doc-tests-file}[{api}-response]
|
||||
--------------------------------------------------
|
||||
<1> Total number of shards hit by the flush request
|
||||
<2> Number of shards where the flush has succeeded
|
||||
<3> Number of shards where the flush has failed
|
||||
<4> Name of the index whose results we are about to calculate.
|
||||
<5> Total number of shards for index mentioned in 4.
|
||||
<6> Successful shards for index mentioned in 4.
|
||||
<7> Failed shards for index mentioned in 4.
|
||||
<8> One of the failed shard ids of the failed index mentioned in 4.
|
||||
<9> Reason for failure of copies of the shard mentioned in 8.
|
||||
<10> JSON represented by a Map<String, Object>. Contains shard related information like id, state, version etc.
|
||||
for the failed shard copies. If the entire shard failed then this returns an empty map.
|
||||
|
||||
By default, if the indices were not found, an `ElasticsearchException` will be thrown:
|
||||
|
||||
["source","java",subs="attributes,callouts,macros"]
|
||||
--------------------------------------------------
|
||||
include-tagged::{doc-tests-file}[{api}-notfound]
|
||||
--------------------------------------------------
|
||||
<1> Do something if the indices to be flushed were not found
|
|
@ -102,7 +102,6 @@ Index Management::
|
|||
* <<{upid}-clone-index>>
|
||||
* <<{upid}-refresh>>
|
||||
* <<{upid}-flush>>
|
||||
* <<{upid}-flush-synced>>
|
||||
* <<{upid}-clear-cache>>
|
||||
* <<{upid}-force-merge>>
|
||||
* <<{upid}-rollover-index>>
|
||||
|
@ -138,7 +137,6 @@ include::indices/split_index.asciidoc[]
|
|||
include::indices/clone_index.asciidoc[]
|
||||
include::indices/refresh.asciidoc[]
|
||||
include::indices/flush.asciidoc[]
|
||||
include::indices/flush_synced.asciidoc[]
|
||||
include::indices/clear_cache.asciidoc[]
|
||||
include::indices/force_merge.asciidoc[]
|
||||
include::indices/rollover.asciidoc[]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue