Поиск с параметром прокрутки позволяет превысить max_result_window
Я использую эластичный поиск 2.4.0. Мои настройки индекса следующие
settings: {
index: {
creation_date: "1506434142013",
number_of_shards: "5",
number_of_replicas: "1",
uuid: "A8_ikspMQgu34QOb22aIdA",
version: {
created: "2040099"
}
}
}
Поэтому параметр max_result_window установлен на 10000 (значение по умолчанию), когда я выполняю такой запрос
curl -XGET 'localhost:9200/index_name/_search?pretty' -d'
{
"from" : 0, "size" : 100000
}
'
я получил query_phase_execution_exception
как from + size must be less than or equal to: [10000]
, Но когда я делаю эту вещь
curl -XGET 'localhost:9200/index_name/_search?scroll=0m&pretty' -d'
{
"from" : 0, "size" : 100000
}
'
Я не получаю ошибки, и запрос выполняется. Мне просто интересно, если это хорошо, как это поведение не объявлено.
PS такие запросы могут вызвать
out_of_memory_error
если индекс довольно большой