Вам нужно либо увеличить параметр size
, либо по-другому отсортировать данные. По умолчанию поисковый запрос возвращает только 10 совпадений, и вполне возможно, что первые 10 возвращаемых документов относятся к user_id: 4161
.
GET _msearch
{ "index": ["index1", "index2", "index3"]}
{"size": 100, "query": {"terms": {"user_id": [4161,4402] } }}
Запрос terms
является запросом ИЛИ , т.е. terms: [4161,4402]
эквивалентно term: 4161 OR term: 4402
.
Другой способ, поскольку вы используете _msearch
, - это отправить один запрос на каждый индекс, поскольку вы вернете больше данных, вам может повезти и получить данные для обоих пользователей.
GET _msearch
{ "index": "index1"}
{"query": {"terms": {"user_id": [4161,4402] } }}
{ "index": "index2"}
{"query": {"terms": {"user_id": [4161,4402] } }}
{ "index": "index3"}
{"query": {"terms": {"user_id": [4161,4402] } }}