Documentation updates for scroll API size parameter (#21229)

* Document size parameter for scroll API

* Fix size parameter behavior description for scroll
This commit is contained in:
Craig Squire 2016-11-01 14:55:09 -05:00 committed by Nik Everett
parent 8dd91eb2d6
commit 1f1daf59bc
2 changed files with 6 additions and 7 deletions

View File

@ -58,7 +58,7 @@ SearchResponse scrollResp = client.prepareSearch(test)
.addSort(FieldSortBuilder.DOC_FIELD_NAME, SortOrder.ASC) .addSort(FieldSortBuilder.DOC_FIELD_NAME, SortOrder.ASC)
.setScroll(new TimeValue(60000)) .setScroll(new TimeValue(60000))
.setQuery(qb) .setQuery(qb)
.setSize(100).execute().actionGet(); //100 hits per shard will be returned for each scroll .setSize(100).execute().actionGet(); //max of 100 hits will be returned for each scroll
//Scroll until no hits are returned //Scroll until no hits are returned
do { do {
for (SearchHit hit : scrollResp.getHits().getHits()) { for (SearchHit hit : scrollResp.getHits().getHits()) {
@ -68,10 +68,6 @@ do {
scrollResp = client.prepareSearchScroll(scrollResp.getScrollId()).setScroll(new TimeValue(60000)).execute().actionGet(); scrollResp = client.prepareSearchScroll(scrollResp.getScrollId()).setScroll(new TimeValue(60000)).execute().actionGet();
} while(scrollResp.getHits().getHits().length != 0); // Zero hits mark the end of the scroll and the while loop. } while(scrollResp.getHits().getHits().length != 0); // Zero hits mark the end of the scroll and the while loop.
-------------------------------------------------- --------------------------------------------------
[NOTE]
====
The size-parameter is per shard, so if you run a query against multiple indices (leading to many shards being involved in the query) the result might be more documents per execution of the scroll than you would expect!
====
[[java-search-msearch]] [[java-search-msearch]]
=== MultiSearch API === MultiSearch API

View File

@ -40,6 +40,7 @@ should keep the ``search context'' alive (see <<scroll-search-context>>), eg `?s
-------------------------------------------------- --------------------------------------------------
POST /twitter/tweet/_search?scroll=1m POST /twitter/tweet/_search?scroll=1m
{ {
"size": 100,
"query": { "query": {
"match" : { "match" : {
"title" : "elasticsearch" "title" : "elasticsearch"
@ -72,8 +73,10 @@ POST <1> /_search/scroll <2>
for another `1m`. for another `1m`.
<4> The `scroll_id` parameter <4> The `scroll_id` parameter
Each call to the `scroll` API returns the next batch of results until there The `size` parameter allows you to configure the maximum number of hits to be
are no more results left to return, ie the `hits` array is empty. returned with each batch of results. Each call to the `scroll` API returns the
next batch of results until there are no more results left to return, ie the
`hits` array is empty.
IMPORTANT: The initial search request and each subsequent scroll request IMPORTANT: The initial search request and each subsequent scroll request
returns a new `_scroll_id` -- only the most recent `_scroll_id` should be returns a new `_scroll_id` -- only the most recent `_scroll_id` should be