Browse Source

[Docs] Add search timeout caveats (#33354)

Global search timeouts and timeouts specified in the search request body use the
same internal mechanism as search cancellation. Therefore the same caveats
apply, mostly around the responsiveness of the timeout which gets only checked
by a running search on segment boundaries by default.

Closes #31263
Christoph Büscher 7 years ago
parent
commit
79db16f9bb
2 changed files with 11 additions and 5 deletions
  1. 8 4
      docs/reference/search.asciidoc
  2. 3 1
      docs/reference/search/request-body.asciidoc

+ 8 - 4
docs/reference/search.asciidoc

@@ -119,10 +119,14 @@ Individual searches can have a timeout as part of the
 <<search-request-body>>. Since search requests can originate from many
 sources, Elasticsearch has a dynamic cluster-level setting for a global
 search timeout that applies to all search requests that do not set a
-timeout in the <<search-request-body>>. The default value is no global
-timeout. The setting key is `search.default_search_timeout` and can be
-set using the <<cluster-update-settings>> endpoints. Setting this value
-to `-1` resets the global search timeout to no timeout.
+timeout in the request body. These requests will be cancelled after
+the specified time using the mechanism described in the following section on
+<<global-search-cancellation>>. Therefore the same caveats about timeout
+responsiveness apply.
+
+The setting key is `search.default_search_timeout` and can be set using the
+<<cluster-update-settings>> endpoints. The default value is no global timeout.
+Setting this value to `-1` resets the global search timeout to no timeout.
 
 [float]
 [[global-search-cancellation]]

+ 3 - 1
docs/reference/search/request-body.asciidoc

@@ -60,7 +60,9 @@ And here is a sample response:
 
     A search timeout, bounding the search request to be executed within the
     specified time value and bail with the hits accumulated up to that point
-    when expired. Defaults to no timeout. See <<time-units>>.
+    when expired. Search requests are canceled after the timeout is reached using
+    the <<global-search-cancellation>> mechanism.
+    Defaults to no timeout. See <<time-units>>.
 
 `from`::