Elasticsearch версия 7.0.0-alpha2
Существенные изменения
- Аутентификация
- Разрывы цепи
- CCR
- API индексов
- Рейтинг
- Скрипты
- Поиск
-
- Удаление устаревшего конечного пункта _termvector. #36131 (задачи: #36098, #8484)
- Удаление устаревших конечных пунктов Graph #35956
- Проверка метаданных на
_msearch#35938 (задача: #35869) - Сделать hits.total объектом в ответе поиска #35849 (задача: #33028)
- Удаление различия между контекстом запроса и фильтра в QueryBuilders #35354 (задача: #35293)
- Выбрасывание исключения при разборе, когда boost задан в запросе span_or (#28390) #34112 (задача: #28390)
- ZenDiscovery
-
- Попытка формирования кластера, если он не настроен #36215
Изменения в Java
- ZenDiscovery
-
- Сделать поле node в JoinRequest приватным #36405
Устаревшие элементы
- Основной
- Машинное обучение
- Картирование
-
- Устаревает использование типов в API индекса #36575 (проблемы: #35190, #35790)
- Устаревает использование `_type` в качестве имени поля в запросах #36503 (проблема: #35190)
- Устаревают типы в `update_by_query` и `delete_by_query` #36365 (проблема: #35190)
- Для шаблонов msearch убедитесь, что используется правильное имя для ведения журнала устаревания. #36344
- Устаревают типы в запросах termvector и mtermvector. #36182
- Устаревают типы в запросах обновления. #36181
- Устаревают типы в запросах удаления документов. #36087
- Устаревают типы в запросах get, exists и multi get. #35930
- Устаревают типы в шаблонах поиска и многократного поиска. #35669
- Устаревают типы в запросах explain. #35611
- Устаревают типы в запросах валидации запросов. #35575
- Устаревают типы в запросах count и msearch. #35421 (проблема: #34041)
- Миграция
- Мониторинг
- Сводка
- Скрипты
- Поиск
- Безопасность
- SQL
- Watcher
Новые возможности
- Анализ
- Java REST-клиент высокого уровня
- Java REST-клиент низкого уровня
- Гео
- Машинное обучение
- Картирование
- SQL
- Поиск
Улучшения
- Агрегации
-
- Добавлена поддержка ключей в ответ для агрегаций перцентилей в конвейере 22302 #36392 (вопрос: #22302)
- Ограничение max_buckets применяется только на заключительной фазе редукции #36152 (вопросы: #32125, #35921)
- Агрегации типа Гистограмма: добавление пустых корзинок только на финальной стадии редукции #35921
- Обработка запроса exists в составных агрегациях #35758
- Добавлена проверка родительских элементов для автоматической агрегации по дате #35670
- Анализ
- Аудит
-
- Добавление "request.id" в журналы аудита файлов #35536
- Аутентификация
- Авторизация
- Сборка
- CCR
-
- Добавление времени с момента последнего автоматического получения данных следования к статистике автоматического следования #36542 (вопросы: #33007, #35895)
- Очистка UUID следования индексов лидера в метаданных автоматического следования #36408 (вопрос: #33007)
- Изменение AutofollowCoordinator на использование wait_for_metadata_version #36264 (вопросы: #33007, #35895)
- Рефакторинг AutoFollowCoordinator для отслеживания индексов лидеров по кластерам удаленных узлов #36031 (вопросы: #33007, #35895)
- Ядро
-
- Переопределение политики кэширования DNS JVM #36570
- Замена использования AtomicBoolean на класс RunOnce #35553 (вопрос: #35489)
- Добавление параметра wait_for_metadata_version к API состояния кластера. #35535
- Выделение RunOnce в отдельный класс #35489
- Введение JAR-файла elasticsearch-core #28191 (вопрос: #27933)
- Переименование модуля ядра в сервер #28180 (вопрос: #27933)
- CRUD
-
- Переименование параметров оптимистического управления конкурентностью, основанных на seq#, на ifSeqNo/ifPrimaryTerm #36757 (вопросы: #10708, #36148)
- Экспонирование оптимистического управления конкурентностью, основанного на номере последовательности, в слое REST #36721 (вопросы: #10708, #36148)
- Добавление номера последовательности документа + первичного номера в GetResult и использование их для обновлений #36680 (вопросы: #10708, #36148)
- Добавление поддержки оптимистического блокирования, основанного на номере последовательности, к действиям перемещения и удаления индекса #36619 (вопросы: #10708, #36148)
- Распределённый
-
- [API закрытия индекса] Отметить копию фрагмента как устаревшую, если это необходимо, во время проверки фрагмента #36755
- [API закрытия индекса] Рефакторинг MetadataIndexStateService #36354 (вопрос: #36249)
- [API закрытия индекса] Добавление TransportShardCloseAction для предварительных проверок закрытия #36249
- TransportResyncReplicationAction не должен учитывать блокировки #35795 (вопросы: #35332, #35597)
- Экспонировать все операции получения разрешений в IndexShard и TransportReplicationAction #35540 (вопрос: #33888)
- [RCI] Проверка блокировок при наличии разрешения на фрагмент индекса в TransportReplicationAction #35332 (вопрос: #33888)
- Движок
-
- Добавить порядковые номера, основанные на поддержке оптимистического контроля конкурентности, в Engine #36467 (задачи: #10708, #36148)
- Требовать мягких удалений при изменении доступа к снимку #36446
- Использовать delCount из SegmentInfos для расчета numDocs #36323
- Всегда настраивать поле soft-deletes в IndexWriterConfig #36196 (задача: #36141)
- Включить soft-deletes по умолчанию в 7.0.0 или более поздних версиях #36141
- Всегда возвращать false из
refreshNeededв ReadOnlyEngine #35837 (задача: #35785) - Добавить API
_freeze/_unfreeze#35592 (задача: #34352) - [RCI] Добавить IndexShardOperationPermits.asyncBlockOperations(ActionListener<Releasable>) #34902 (задача: #33888)
- Функции
-
- Упростить уровни задач по устареванию #36326
- API индексов
- Ingest
- Java High Level REST клиент
-
- Добавить действие get users #36332 (проблема: #29827)
- Добавить API delete template #36320 (проблема: #27205)
- Реализовать API get-user-privileges #36292
- API Get Deprecation Info #36279 (проблема: #29827)
- Добавить поддержку API Follow Stats #36253 (проблема: #33824)
- Добавить поддержку API CCR Stats #36213 (проблема: #33824)
- Добавить роль Put Role #36209 (проблема: #29827)
- Добавить API index templates exist #36132 (проблема: #27205)
- Добавить поддержку API CCR Get Auto Follow Pattern #36049 (проблема: #33824)
- Добавить поддержку API CCR Delete Auto Follow Pattern #35981 (проблема: #33824)
- Удалить fromXContent из IndexUpgradeInfoResponse #35934
- Добавить API delete expired data #35906 (проблема: #29827)
- Выполнить API watch #35868 (проблема: #29827)
- Добавить возможность добавить пользователя с хэшем пароля #35844 (проблема: #35242)
- Добавить API ML find file structure #35833 (проблема: #29827)
- Добавить поддержку API get roles #35787 (проблема: #29827)
- Добавлена поддержка API CCR Put Auto Follow Pattern #35780 (проблема: #33824)
- Действие XPack ML info #35777 (проблема: #29827)
- ML Удаление события из календаря #35760 (проблема: #29827)
- Добавить API ML revert model snapshot #35750 (проблема: #29827)
- ML Получить события календаря #35747 (проблема: #29827)
- Добавить API высокого уровня REST-клиента для
_freezeи_unfreeze#35723 (проблема: #34352) - Исправить ошибку в реализации equals для GlobalOperationPrivileges #35721
- ML Удалить задачу из календаря #35713 (проблема: #29827)
- ML Добавить событие в календарь API #35704 (проблема: #29827)
- Добавить API ML update model snapshot (#35537) #35694 (проблема: #29827)
- Добавить поддержку API CCR Unfollow #35693 (проблема: #33824)
- Очистить PutLicenseResponse #35689 (проблема: #35547)
- Очистить StartBasicResponse #35688 (проблема: #35547)
- Добавить поддержку API put privileges #35679
- ML Добавить задачу в календарь API #35666 (проблема: #29827)
- Добавить поддержку API CCR Resume Follow #35638 (проблема: #33824)
- Добавить поддержку API get application privileges #35556 (проблема: #29827)
- Очистка класса XPackInfoResponse и связанных тестов #35547
- Добавить параметры в API stopRollupJob #35545 (проблема: #34811)
- Добавить API ML delete model snapshot #35537 (проблема: #29827)
- Добавить API get watch #35531 (проблема: #29827)
- Добавить API ML Update Filter #35522 (проблема: #29827)
- Добавить API ml get filters #35502 (проблема: #29827)
- Добавить API ML get model snapshots #35487 (проблема: #29827)
- Добавить API "_has_privileges" в Security Client #35479 (проблема: #29827)
- Добавить API Delete Privileges в HLRC #35454 (проблема: #29827)
- Добавить поддержку API CCR Put Follow #35409
- Добавить ML delete filter action #35382 (проблема: #29827)
- Добавить действие delete user #35294 (проблема: #29827)
- HLRC для _mtermvectors #35266 (вопросы: #27205, #33447)
- API повторной индексации с wait_for_completion false #35202 (вопрос: #27205)
- Добавить API watcher stats #35185 (вопрос: #29827)
- Поддержка HLRC для getTask #35166 (вопрос: #27205)
- Добавить API GetRollupIndexCaps #35102 (вопрос: #29827)
- HLRC: API миграции - обновление #34898 (вопрос: #29827)
- Добавить поддержку остановки задачи агрегирования в HL REST Client #34702 (вопрос: #29827)
- Поддержка API Bulk для глобальных параметров #34528 (вопрос: #26026)
- Добавить поддержку удаления задачи агрегирования в HL REST Client #34066 (вопрос: #29827)
- Добавить поддержку API получения статуса лицензии basic/trial #33176 (вопрос: #29827)
- Добавить задачу ML open job #32860 (вопрос: #29827)
- Добавить обёртку ML HLRC и вызов API put_job #32726
- Добавить Get Snapshots High Level REST API #31537 (вопрос: #27205)
- Java Low Level REST Client
-
- При добавлении таймаута повторной попытки добавить исключение root #25576
- Мониторинг
- Geo
- Лицензия
- Машинное обучение
-
- Создать индекс ML аннотаций #36731 (вопросы: #26034, #33376)
- Разбить на пакеты и мигрировать все задачи и источники данных #36716 (вопрос: #32905)
- Добавить настройку кластера для включения/выключения миграции конфигурации #36700 (вопрос: #32905)
- Добавить аудиты при возникновении предупреждений о устаревании с запуском источника данных #36233
- Добавить ленивое парсирование для DatafeedConfig:Aggs,Query #36117
- Добавить поддержку ленивых узлов (#29991) #34538 (вопрос: #29991)
- Сеть
-
- Единое именование настроек транспорта #36623
- Добавление имени sni в SSLEngine в транспортном слое netty #33144 (проблема: #32517)
- Добавление поддержки CORS в NioHttpServerTransport #30827 (проблема: #28898)
- Повторное введение обязательной поддержки http-пипелайнинга #30820
- Сделать поддержку http-пипелайнинга обязательной #30695 (проблемы: #28898, #29500)
- Добавление транспортного слоя NioHttpServerTransport #29587 (проблема: #28898)
- Селекторы работают с контекстами каналов #28468 (проблема: #27260)
- Единый контекст каналов для чтения/записи в nio #28160 (проблема: #27260)
- Создание плагина nio-transport для NioTransport #27949 (проблема: #27260)
- Добавление jar-файла elasticsearch-nio для базовых классов nio #27801 (проблема: #27802)
- Добавление NioGroup для использования в различных транспортных слоях #27737 (проблема: #27260)
- Добавление таймаутов для чтения в модуль http #27713
- Реализация повторного использования массивов байтов в
NioTransport#27696 (проблема: #27563) - Введение ресайзибельного входного буфера байтов #27551 (проблема: #27563)
- Развязка конструкций nio от транспортного слоя tcp #27484 (проблема: #27260)
- Удаление ручного отслеживания зарегистрированных каналов #27445 (проблема: #27260)
- Удаление tcp профиля из низкоуровневого канала nio #27441 (проблема: #27260)
- Развязка
ChannelFactoryот классов Tcp #27286 (проблема: #27260)
- Упаковка
- Плагины
-
- Установка плагинов: не выводить прогресс загрузки в пакетном режиме #36361
- Ранжирование
- Восстановление
- Сводка
- Скрипты
- Настройки
- Поиск
-
- Добавление конструктора копирования к SearchRequest #36641 (проблема: #32125)
- Добавление значений сортировки в сыром виде к серийализации транспорта SearchSortValues #36617 (проблема: #32125)
- Добавление информации о сортировке и свёртке к серийализации транспорта SearchHits #36555 (проблема: #32125)
- Добавление стандартных методов к DocValueFormat #36480
- Уважение параметров индексов в _msearch #35887
- Разрешение эффективных фаз can_match для замороженных индексов #35431 (проблемы: #34352, #34357)
- Добавление нового типа запроса - ScriptScoreQuery #34533 (проблемы: #23850, #27588, #30303)
- Безопасность
- Снимок/восстановление
- SQL
-
- Расширить метрику ODBC, дифференцируя 32- и 64-разрядные платформы #36753 (проблема: #36740)
- Исправить неправильное применение ограничения StackOverflow для IN #36724 (проблема: #36592)
- Ввести функцию NOW/CURRENT_TIMESTAMP #36562 (проблема: #36534)
- Переместить параметры запросов в тело JSON запроса #36149 (проблема: #35992)
- Сделать INTERVAL millis необязательным #36043 (проблема: #36032)
- Реализовать проверку типа данных для условных выражений #35916 (проблема: #35907)
- Реализовать функции GREATEST и LEAST #35879 (проблема: #35878)
- Реализовать оператор равенства с безопасностью от NULL
<=>#35873 (проблема: #35871) - SYS COLUMNS возвращает схему, специфичную для ODBC #35870 (проблема: #35376)
- Отшлифовать грамматику для интервалов #35853
- Добавить фильтрацию для SYS TYPES #35852 (проблема: #35342)
- Реализовать функцию NULLIF(expr1, expr2) #35826 (проблема: #35818)
- Заблокировать JDBC драйвер #35798 (проблема: #35437)
- Реализовать NVL(expr1, expr2) #35794 (проблема: #35782)
- Реализовать ISNULL(expr1, expr2) #35793 (проблема: #35781)
- Реализовать вариант IFNULL COALESCE #35762 (проблема: #35749)
- Функциональность XPack FeatureSet #35725 (проблема: #34821)
- Выполнять ленивую оценку несовпадающих отображений #35676 (проблемы: #35659, #35675)
- Улучшить валидацию недопустимых полей #35675 (проблема: #35673)
- Переместить внутренние компоненты из Joda в java.time #35649 (проблема: #35633)
- Статистика
- Управление задачами
- ZenDiscovery
-
- Добавить типы обнаружения в статистику кластера #36442
- Ввести тип обнаружения
zen2#36298 - Zen2: Сохранять состояния кластера старым способом на узлах, не подходящих для роли мастера #36247 (проблема: #3)
- [Zen2] Распространение состояния WriteStateException в слое хранения #36052
- [Zen2] Реализовать REST-API для меток #36007
- [Zen2] Обновить значение по умолчанию для USE_ZEN2 на true #35998
- [Zen2] Добавить предупреждение, если кластер не сформировался достаточно быстро #35993
- [Zen2] Разрешить указание списка узлов начальной загрузки, ожидающих их #35847
- [Zen2] Класс VotingTombstone #35832
- [Zen2] Реализация интерфейса PersistedState #35819
- [Zen2] Поддержка плавного обновления с Zen1 #35737
- [Zen2] Добавить детектор задержек #35685
- [Zen2] Переместить поля ClusterState для сохранения в ClusterState.Metadata #35625
- [Zen2] Ввести ClusterBootstrapService #35488
- [Zen2] Ввести отозвать голос #35446
- Zen2: Добавить базовый Zen1 транспортный уровень BWC #35443
Исправления ошибок
- Агрегации
-
- исправить MultiValuesSourceFieldConfig toXContent #36525 (задача: #36474)
- кэшировать оценку родительского документа в вложенной агрегации #36019 (задачи: #34555, #35985)
- исправить реализацию интерфейса ParsedReverseNested #35455 (задача: #35449)
- обработать IndexOrDocValuesQuery в составной агрегации #35392
- Аудит
- Аутентификация
- Сборка
- CCR
-
- исправить функцию фильтрации индексов фолловера в API статистики follow #36647
- AutoFollowCoordinator должен обрабатывать удаление шаблонов автоматического follow #35945 (задача: #35937)
- Автоматически следить за индексами только после запуска всех первичных фрагментов #35814 (задача: #35480)
- избежать NPE в статистике follower при отсутствии метаданных задач #35802
- исправить названия конечных точек статистики CCR в API использования #35438
- Разрывы цепи
- Ядро
- Распределённая
- Двигатель
- Гео
- API индексов
- Обработка
- Лицензия
- Машинное обучение
-
- Прерывание Grok в поиске структуры файла при истечении времени ожидания #36588
- Предотвращение переполнения стека при копировании ML-задач и источников данных #36370 (проблема: #36360)
- Настройка парсера поиска структуры файла #35935
- Исправление ошибки NPE find_file_structure с should_trim_fields #35465 (проблема: #35462)
- Предотвращение создания уведомлений при удалении несуществующей задачи #35337 (проблемы: #34058, #35336)
- Очистка Job#finished_time при его открытии (#32605) #32755
- Исправление утечки потоков при ожидании завершения задачи (#32196) #32541 (проблема: #32196)
- Исправление ошибки отбора проб CPoissonMeanConjugate. #335
- Сеть
-
- Не разрешать адреса в информации о удалённом подключении #36671 (проблема: #35658)
- Всегда сжимать в соответствии с настройками #36522 (проблема: #36399)
- http.publish_host Должен содержать CNAME #32806 (проблема: #22029)
- Настройка поведения SSLDriver для изменений JDK11 #32145 (проблемы: #32122, #32144)
- Добавление методов http TRACE, CONNECT и PATCH #31035 (проблема: #31017)
- Клиент транспорта: Не валидировать узел в рукопожатии #30737 (проблема: #30141)
- Исправление проблемы с завершением рукопожатия в ssl-драйвере #30580
- Удаление потенциальной утечки селектора nio #27825
- Исправление проблемы с записью неверных буферов #27695 (проблема: #27551)
- Не устанавливать SO_LINGER на каналы сервера #26997
- Не устанавливать SO_LINGER в 0 при отсутствии завершения работы #26871 (проблема: #26764)
- Выпуск обработанных http-ответов в случае закрытия #26226
- Упаковка
- Плагины
- Восстановление
-
- Регистрация ResyncTask.Status как NamedWriteable #36610
- Сводка
-
- Исправление статистики поиска сводки #36674
- Скрипты
-
- Правильная поддержка форматирования даты без смещения #36316 (проблема: #36306)
- [Painless] Генерация методов моста #36097
- Исправление ошибки сериализации в запросе API painless execute #36075 (проблема: #36050)
- Фактическое добавление joda time в список разрешённых #35965 (проблема: #35915)
- Добавление joda в список разрешённых #35915 (проблема: #35913)
- Настройки
- SQL
-
- Исправление перевода ключевых слов LIKE/RLIKE #36672 (вопросы: #36039, #36584)
- Поддержка скриптинга для функций преобразования CAST и CONVERT #36640 (вопрос: #36061)
- Исправление перевода на painless для условных выражений #36636 (вопрос: #36631)
- Concat всегда должен быть не nullable #36601 (вопрос: #36169)
- Исправление MOD() для длинных и целочисленных аргументов #36599 (вопрос: #36364)
- Исправление проблемы со сложными HAVING и GROUP BY порядковыми номерами #36594 (вопрос: #36059)
- Свободное отношение для тестов, включающих сравнение с H2, но строгие тесты для спецификаций CSV #36498 (вопрос: #36483)
- Не-ISO 8601 версии функций DAY_OF_WEEK и WEEK_OF_YEAR #36358 (вопрос: #36263)
- Не игнорировать все поля, имена которых начинаются с подчеркивания #36214 (вопрос: #36206)
- Исправление проблемы с неправильным типом данных для ключей группировки со скриптами #35969 (вопрос: #35662)
- Исправление перевода математических функций на painless #35910 (вопрос: #35654)
- Исправить jdbc jar для включения зависимостей #35602
- Исправление перевода запросов для запросов со скриптами #35408 (вопрос: #35232)
- Очистить курсор, если вложенные внутренние результаты достаточны для выполнения ограничений запроса #35398 (вопрос: #35176)
- Введение узла IsNull для упрощения выражений #35206 (вопросы: #34876, #35171)
- Стандартная конфигурация SSL не должна перезаписывать протокол https, если он используется #34635 (вопрос: #33817)
- Незначительное исправление javadoc #32573 (вопрос: #32553)
- Поиск
-
- Внутренние результаты не распространяют формат doc-value. #36310
- Исправление проблемы с пользовательским AUTO с Fuzziness#toXContent #35807 (вопрос: #33462)
- Исправление анализированного запроса с префиксом в query_string #35756 (вопрос: #31702)
- Исправление проблемы с MatchNoDocsQuery в дизъюнктивных запросах #35726 (вопрос: #34708)
- Исправление phrase_slop в запросе query_string #35533 (вопрос: #35125)
- Добавление проверки требования маршрутизации для запроса More Like This (#29678) #33974
- Безопасность
- Снимок/Восстановление
-
- Обновление зависимостей GCS до 1.55.0 #36634 (вопросы: #35229, #35459)
- Улучшение устойчивости SnapshotShardService #36113 (вопрос: #32265)
- Сохранение состояния SnapshotsInProgress в синхронизации с таблицей маршрутизации #35710
- Обеспечение того, что создание клиента gcs имеет привилегии #25938 (вопрос: #25932)
- Сделать вызовы CloudBlobContainer#exists привилегированными #25937 (вопрос: #25931)
- Watcher
-
- Учетные записи Watcher создаются лениво #36656
- Срабатывание наблюдения только в случае новых или измененных расписаний #35908
- Исправление безопасных настроек Watcher NotificationService #35610 (вопрос: #35378)
- Исправление интеграционных тестов для обеспечения правильного запуска/остановки Watcher #35271 (вопросы: #29877, #30705, #33291, #34448, #34462)
- ZenDiscovery
Регрессии
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/release-notes-7.0.0-alpha2.html