Как использовать сортировку с пружинными данными - PullRequest
0 голосов
/ 10 июня 2019

Похоже, ошибка. Сортировка отлично подходит для простого поиска, но не работает для прокрутки. Я пытаюсь сделать это:

FieldSortBuilder sortTimeCreated = SortBuilders.fieldSort("meta.time_created").order(SortOrder.ASC);
    SearchQuery searchQuery = new NativeSearchQueryBuilder()
                    .withSort(sortTimeCreated)
                    .withQuery(queryBuilder)
                    .withFields("meta.time_created")
                    .withPageable(PageRequest.of(0, 5/*, Sort.Direction.ASC, "meta.time_created"*/)) //was not work
                    .build();
//searchQuery.addSort(Sort.by("meta.time_created").ascending()); //was not work too(used not together with sortTimeCreated)

и после этого:

 Page<ElasticRecord> search = elasticsearchTemplate.queryForPage(searchQuery, ElasticRecord.class);
 Page<ElasticRecord> scroll = elasticsearchTemplate.startScroll(30000, searchQuery, ElasticRecord.class);

При запуске приложение отображает:

  1. поиск:

| ОТЛАДКА | o.s.d.elasticsearch.core.QUERY: 937 | { "От": 0, "размер": 5, "запрос": { "constant_score": { "фильтр": {... пропущено ...}, "подталкивание": 1,0}}, "версия": правда , "_ источник": { "включает в себя": [ "meta.time_created"], "исключает": []}, "сорт": [{ "meta.time_created": { "порядок": "по возрастанию"}}]}

  1. пролистайте:

| ОТЛАДКА | o.s.d.elasticsearch.core.QUERY: 937 | { "От": 0, "размер": 5, "запрос": { "constant_score": { "фильтр": {... пропущено ...}, "подталкивание": 1,0}}, "версия": правда , "_ источник": { "включает в себя": [ "meta.time_created"], "исключает": []}}

Пружинная загрузка (2.1.5.RELEASE (spring-data -asticsearch 3.1.8.RELEASE), 2.1.2.RELEASE (spring-data -asticsearch 3.1.8.RELEASE, 3.1.5.RELEASE 3.1.0. RELEASE)

Есть идеи?

1 Ответ

0 голосов
/ 12 июня 2019

Это было добавлено в Выпуск 457 , который был объединен с текущим мастером 24 апреля 2019 года. Он доступен в Spring Data Elasticsearch 3.2.0 M4.

...