Введение
Я обновляю эластичную версию до 6.3 (ранее мы использовали 5.4.
Наше приложение написано на C #, поэтому мы используем NEST.NET dll для общения с сервером Elastic, поэтому мы также обновляем его до версии 6.0.0.0.
Вариант использования - До
До версии 5 мне удавалось выполнить этот запрос:
jsonStr ="
{
"from": 16224,
"size": 12,
"query": {
"bool": {
"filter": [
{
"bool": {
"must": [
{
"terms": {
"COMPANY": [
"AMP Services Ltd"
]
}
}
]
}
}
]
}
}
}
}"
Используя этот код NEST / C #:
Func<SearchRequestParameters, SearchRequestParameters> requestParameters = null;
requestParameters = a => a.Scroll(new TimeSpan(0, 1, 0));
response = Connection.Client.GetInstance().LowLevel.Search<dynamic>("myindex", new PostData<dynamic>(jsonStr), requestParameters);
И с этим я смог получить данные без проблем,
Вариант использования - СЕЙЧАС
Теперь, с версией 6, я пытаюсь выполнить тот же самый запрос:
jsonStr ="
{
"from": 16224,
"size": 12,
"query": {
"bool": {
"filter": [
{
"bool": {
"must": [
{
"terms": {
"COMPANY": [
"AMP Services Ltd"
]
}
}
]
}
}
]
}
}
}"
Используя этот код NEST / C # (поскольку сигнатуры метода previus более недоступны):
SearchRequestParameters searchRequest = new SearchRequestParameters();
searchRequest.Scroll = new TimeSpan(0, 1, 0);
response = Connection.Client.GetInstance().LowLevel.Search<StringResponse>("myindex", PostData.String(jsonStr), searchRequest);
И я получаю эту ошибку: "Ошибка проверки: 1: использование [from] недопустимо в контексте прокрутки;"
Документация
Я не смог ничего найти здесь (https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-scroll.html) и здесь (https://www.elastic.co/guide/en/elasticsearch/client/net-api/current/sliced-scroll-search-usage.html), чтобы помочь мне заменить эту логику. На форумах тоже ничего нет.
Ребята, у вас есть какие-то идеи по этому поводу?
Спасибо