elasticsearch/docs/reference/search
Michael Peterson 649821e992
Support cluster/details for CCS minimize_roundtrips=false (#98457)
This commit tracks progress for each shard search by cluster alias
using a new SearchProgressListener (CCSSingleCoordinatorSearchProgressListener).
Both sync and async CCS searches use this new progress listener when
minimize_roundtrips=false.

Two of the SearchProgressListener method had to be extended to allow tracking
per-cluster took values (TransportSearchAction.SearchTimeProvider) and
whether searches timed out (by passing in QuerySearchResult to the onQueryResult
listener method).

This commit brings parity between minimize_roundtrips=true and false to have
the same _cluster/details sections in CCS search responses.

Note that there are still a few differences between minimize_roundtrips=true and false.
1. The per-cluster took value for minimize_roundtrips=true is accurate, but the
   for 'false' it is only measured at the granualarity of each partial reduce,
   so the per cluster took time is overestimated in basically all cases.
2. For minimize_roundtrips=true, a skip_unavailable=false cluster that disconnects
   during the search or has all searches on all shards fail, will cause the entire
   search to fail. This is (still) not true for minimize_roundtrips=false. The search
   is only failed if the skip_unavailable=false cluster cannot be connected to at the
   start of the search. (This will likely be changed in a follow up ticket that implements
   fail-fast logic for in-progress searches that should fail due to a skip_unavailable=true
   cluster failing.)
3. The shard accounting for minimize_roundtrips=false is always accurate (total shard counts
   are known at the start of the search). For minimize_roundtrips=true, the shard accounting
   is only accurate per cluster unless all clusters have successful (or partially successful)
   searches. For clusters that have failures we do not have shard count info.
2023-08-31 12:56:20 -04:00
..
search-your-data Support cluster/details for CCS minimize_roundtrips=false (#98457) 2023-08-31 12:56:20 -04:00
suggesters Update term-suggest.asciidoc (#86780) 2023-05-09 12:23:45 +02:00
async-search.asciidoc Add completion_time time field to async_search get and status response (#97700) 2023-07-17 09:13:15 -04:00
clear-scroll-api.asciidoc [DOCS] Fix case for 'Boolean' (#64299) 2020-10-29 09:04:43 -04:00
count.asciidoc [DOCS] Add info about GET/POST to the API conventions. (#74529) 2021-06-30 09:24:42 -07:00
explain.asciidoc [DOCS] Consolidate routing parameter definitions (#73107) 2021-05-14 12:27:19 -04:00
field-caps.asciidoc Remove remaining tsdb tech preview labels (#95563) 2023-04-26 12:11:03 +02:00
knn-search.asciidoc [DOCS] Adds KNN object sub-properties individually to common params (#91503) 2022-11-10 17:23:55 +01:00
multi-search-template-api.asciidoc [DOCS] New docs for remote clusters using API key authentication (#98330) 2023-08-24 12:30:03 +02:00
multi-search.asciidoc [DOCS] New docs for remote clusters using API key authentication (#98330) 2023-08-24 12:30:03 +02:00
point-in-time-api.asciidoc [DOCS] Remove redirect pages (#88738) 2023-05-24 12:32:46 +01:00
profile.asciidoc Query phase: fold collector wrappers into a single top level collector (#97030) 2023-06-30 12:48:13 +02:00
rank-eval.asciidoc Update rank-eval.asciidoc (#88771) 2022-07-25 18:00:49 +02:00
render-search-template-api.asciidoc [DOCS] Overhaul search template docs (#72583) 2021-06-30 16:03:49 -04:00
rrf.asciidoc [DOCS] Update RRF tech preview statement (#97851) 2023-07-24 13:55:06 +02:00
scroll-api.asciidoc [DOCS] Update alias references (#73427) 2021-05-27 16:00:57 -04:00
search-shards.asciidoc Limit shard realocation retries (#90296) 2022-09-27 14:44:30 +02:00
search-template-api.asciidoc [DOCS] New docs for remote clusters using API key authentication (#98330) 2023-08-24 12:30:03 +02:00
search-vector-tile-api.asciidoc [DOCS] New docs for remote clusters using API key authentication (#98330) 2023-08-24 12:30:03 +02:00
search.asciidoc [DOCS] Update RRF tech preview statement (#97851) 2023-07-24 13:55:06 +02:00
suggesters.asciidoc Remove 'under development' note in suggester docs (#84366) 2022-02-24 13:27:03 -08:00
terms-enum.asciidoc Limit _terms_enum prefix size (#97488) 2023-07-10 12:21:07 +02:00
validate.asciidoc [DOCS] Update alias references (#73427) 2021-05-27 16:00:57 -04:00