Commit 4d5c210ccac857a5d0f06ffba1781d524b4b46eb
1 parent
9979e2fb
Exists in
master
and in
17 other branches
Added scroll optimization when iterating over all documents
Showing
1 changed file
with
6 additions
and
0 deletions
Show diff stats
lib/searchkick/query.rb
@@ -519,6 +519,12 @@ module Searchkick | @@ -519,6 +519,12 @@ module Searchkick | ||
519 | # run block | 519 | # run block |
520 | options[:block].call(payload) if options[:block] | 520 | options[:block].call(payload) if options[:block] |
521 | 521 | ||
522 | + # scroll optimization when interating over all docs | ||
523 | + # https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html | ||
524 | + if options[:scroll] && payload[:query] == {match_all: {}} | ||
525 | + payload[:sort] ||= ["_doc"] | ||
526 | + end | ||
527 | + | ||
522 | @body = payload | 528 | @body = payload |
523 | @page = page | 529 | @page = page |
524 | @per_page = per_page | 530 | @per_page = per_page |