Я пытаюсь получить все данные из elasticsearch на основе появления сообщения, я решил, что если бы я использовал Scroll, я мог бы зацикливаться до конца поиска документа, но следующий запрос возвращает Documents = 0, но Total = 1954:
var response = client.Search<Log4Net>(s => s
.Query(q => q.QueryString(qs => qs
.DefaultField(m => m.Message).Query("\"" + message + "\"")))
.SearchType(SearchType.Scan)
.Scroll("60s"));
while (response.Documents.Any())
{
var request = new BulkRequest();
request.Refresh = true;
request.Consistency = Consistency.One;
request.Operations = new List<IBulkOperation>();
foreach (var item in response.Documents)
{
request.Operations.Add(new BulkIndexOperation<Log4Net>(item));
}
var result = client.Bulk(request);
response = client.Scroll<Log4Net>("60s", response.ScrollId);
}
ответ. Документ становится пустым, если я использую прокрутку, если я удаляю и получаю первые 1000 сообщений, я могу получить данные, что-то не так с тем, как я использую прокрутку?