Elasticsearch версия 8.12.0
См. также Изменения в 8.12.
Известные проблемы
-
int8_hnswформат векторизованного индекса может не слить сегменты и предотвратить индексирование документов (проблема: #104617)При использовании
int8_hnswи по умолчаниюconfidence_interval(или любогоconfidence_intervalменьше чем1.0), и при наличии удалённых документов в сегментах, квантили могут не создаться и предотвратить слияние.Эта проблема исправлена в 8.12.1.
- При обновлении кластеров с версии 8.11.4 или более ранних, если ваш кластер содержит узлы, не подходящие для роли мастера, информация о новой функциональности этих обновлённых узлов может не быть должным образом зарегистрирована у узла-мастера. Это может привести к недоступности некоторых новых функций, добавленных с 8.12.0 в обновлённом кластере. Если ваш кластер работает с ECK 2.12.1 и выше, это может вызвать проблемы с завершением обновления. Для решения этой проблемы выполните поэтапную перезагрузку узлов, не подходящих для роли мастера, после того, как все узлы Elasticsearch будут обновлены. Эта проблема исправлена в 8.15.0.
Изменения, приводящие к нарушению совместимости
В версии 8.12 нет изменений, приводящих к нарушению совместимости.
Заметные изменения
В версии 8.12 есть заметные изменения, о которых вам нужно знать, но которые мы не считаем критическими (изменения, которые мы можем рассматривать как заметные, это):
- Изменения в функциях, которые находятся в техническом предварительном просмотре.
- Изменения в форматах журналов.
- Изменения в недоступных API.
-
Изменения в поведении, которые устраняют критические ошибки.
- Авторизация
-
Исправлен JWT-принципал из утверждений #101333
- ES|QL
-
[ES|QL] функция pow всегда возвращает double #102183 (проблема: #99055)
- Infra/Плагины
- Удаление метода Plugin.createComponents в пользу перегрузки с объектом PluginServices #101457
Исправления ошибок
- Агрегации
-
- Настройка подсчета корзинок гистограммы для итеративного выполнения #102172
- Коды ошибок агрегаций, часть 1 #99963
- Пропуск загрузки глобальных порядковых номеров, если запрос не соответствует после переписывания #102844
- Вызов родительского прерывателя цепи при построении оценщиков в агрегации фильтров #102511
- Развертывание
ExecutionExceptionпри загрузке из кэша вAbstractIndexOrdinalsFieldData#102476
- Приложение
-
- [API подключения] Исправление ошибки с нулевым значением поля подсказки в анализаторе #103427
- [API подключений] Исправление
ClassCastExceptionпри создании новой синхронизированной задачи #103508 - [API подключений] Исправление ошибки с отсутствующим перечислением TEXT
DisplayType#103430 - [API подключений] Правильная обработка нулевых полей в анализаторе
ConnectorSyncJob#103183 - [Профилирование] Параллельный поиск только при необходимости #103061
- [Приложения поиска] Возврат ответа 400, когда рендеринг шаблона создает некорректный JSON #101474
- Аутентификация
- Авторизация
-
- Исправление кеширования при изменении привилегий #102193
- Потоки данных
-
- Использование размера набора данных вместо размера на диске для статистики потоков данных #103342
- Распределённые
- Дискретизация
- EQL
- ES|QL
-
- ESQL: Исправление
to_degrees(), возвращающего бесконечность #103209 (проблема: #102987) - ESQL: Исправление планирования MV_EXPAND со складываемыми выражениями #101385 (проблема: #101118)
- ESQL: Исправление редкой ошибки с пустой строкой #102350 (проблема: #101969)
- ESQL: Исправление разрешения MV_EXPAND после KEEP * #103339 (проблема: #103331)
- ESQL: Исправление запроса на одно значение #102317 (проблема: #102298)
- ESQL: Улучшение локального сворачивания агрегатов #103670
- ESQL: Улучшение спуска определённых фильтров #103671
- ESQL: Сужение обработки исключений в функциях преобразования #101788 (проблема: #100820)
- ESQL: Обновление использования некоторых исключений, вызванных пользователем #104046
- ESQL: удаление параметра запроса
time_zone#102767 (проблема: #102159) - ES|QL: Исправление NPE при обнаружении одного значения #103150 (проблема: #103141)
- ES|QL: Улучшение управления ошибками разрешения в
mv_expand#102967 (проблема: #102964) - Исправление макета для MV_EXPAND #102916 (проблема: #102912)
- Исправление времени в миллисекундах для контекстов поиска ESQL #103474 (проблема: #103455)
- Исправление планирования дублирующих агрегатов #102165 (проблема: #102083)
- Исправление транспортной версии
PlanStreamOutput#103758 -
AsyncOperator#isFinishedне должно возвращать true при ошибке #104029
- ESQL: Исправление
- Двигатель
-
- Исправление
lastUnsafeSegmentGenerationForGetsдля реального получения #101700
- Исправление
- Гео
- ILM+SLM
- API индексов
- Infra/Core
- Infra/Node Lifecycle
-
- Дождаться перемаршрутизации перед подтверждением put-shutdown #103251
- Infra/Plugins
- Infra/Scripting
- Infra/Settings
-
- Отправлять полный стек-трейс для преобразований настроек файла без состояния #101346
- Ingest Node
-
- Отправка имени индекса в
DocumentParsingObserver, которое никогда не равно null #100862
- Отправка имени индекса в
- License
-
- Журнал ошибок при локальной проверке лицензии #102919
- Machine Learning
-
- Перехватывать исключения во время запуска
pytorch_inference#103873 - Исключать квантили при извлечении снимков моделей, где это возможно #103530
- Исправить агрегацию
frequent_item_setsна пустой индекс #103116 (проблема: #103067) - Если задача загрузки обученной модели выполняется, подождать ее завершения перед выполнением запуска развертывания обученной модели #102944
- Сохранить счетчики данных при закрытии задания перед обновлением индекса результатов #101147
- Сохранить заголовки ответов в предварительном просмотре Datafeed #103923
- Предотвратить попытки доступа к несуществующей информации о узлах во время перебалансировки #103361
- Предотвратить чрезмерную подписку на ресурсы в планировщике распределения моделей #100392
- Запустить новый контекст трассировки перед загрузкой обученной модели #103124
- Дождаться результатов модели при плавном выключении #103591 (проблема: #103414)
- Перехватывать исключения во время запуска
- Mapping
-
- Вернуть изменения #103865
- Monitoring
-
- [Мониторинг] Не получать состояние кластера до восстановления #100565
- Network
-
- Обеспечить правильный
threadContextдляRemoteClusterNodesAction#101050
- Обеспечить правильный
- Ranking
- Reindex
- Search
-
- Добавить исключения JIT-компилятора для
computeCommonPrefixLengthAndBuildHistogram#103112 - Проверить, что скрипты генерируют правильный JSON в действии рендеринга шаблона #101518 (проблема: #101477)
- Исправить NPE и обработку пустых результатов в
CountOnlyQueryPhaseResultConsumer#103203 - Исправить строку форматирования в
OldLuceneVersions#103185 - Обрабатывать таймауты при вызовах переписывания в автономном режиме #103546
- Ввести базу Elasticsearch
PostingFormatна основе формата позиционирования Lucene 90 с использованием PFOR #103601 (проблема: #103002) - Восстановить межсегментную конвейерную обработку поиска с включенным синтетическим источником #103690
- Поддержка сложных выражений datemath в именах индексов и псевдонимов индексов #100646
- Добавить исключения JIT-компилятора для
- Snapshot/Restore
-
- Уменьшить счетчик
SharedBytes.IOпосле завершения чтения, а не до #102848 - Более последовательные сообщения в журнале для удаления снимков #101024
- Перемаршрутизация при завершении создания снимка фрагмента #101585 (проблема: #101514)
- Восстановить подсчет ссылок
SharedBytes.IOпри чтении и записи #102843
- Уменьшить счетчик
- TSDB
-
- Выбросить исключение при обертке агрегации rates в
DeferableBucketAggregator#101032
- Выбросить исключение при обертке агрегации rates в
- Transform
-
- Добавить утверждение в тестовый случай testTransformFeatureReset #100287
- Рассматривать исключения отсутствия контекста поиска как восстанавливаемые #102602
- Рассматривать исключения отмены задачи как восстанавливаемые #100828
- Исправить NPE, который выбрасывается API
_update#104051 (проблема: #104048) - Вести журнал стека вызовов вместе с сообщением в журнале для помощи в отладке #101607
- Разделить строки исходных индексов, разделенных запятыми, на отдельные индексы #102811 (проблема: #99564)
- Поиск по векторам
-
- Запретить векторы, модули которых не поместятся в float #100519
- Watcher
Улучшения
- Агрегации
-
- Проверить реальный разрыв прерывателя памяти при построении глобальных порядковых номеров #102462
- Отключить конкурентность для отбора проб и отбора проб с разнообразием #102832
- Отключить параллелизм для составной агрегации по полям с высокой кардинальностью #102644
- Включить конкурентность для агрегации по нескольким терминам #102710
- Включить конкурентность для агрегации метрик на основе скриптов #102461
- Включить межсегментную конкурентность для агрегаций по терминам #101390
- Экспортировать количество срабатываний прерывателя как метрику счётчика #101423
- Ввести ttl кэша данных поля #102682
- Коды состояния для ошибок агрегации, часть 2 #100368
- Поддержка ключевых гистограмм #101826 (проблема: #100242)
- Распределение
- Приложение
-
- Рассчитать CO2, выбросы и затраты #101979
- Учесть дублирующие стеки вызовов в пользовательском индексе #102292
- Включить универсальный профилирование как функцию Enterprise #100333
- Включить итоги в ответ flamegraph #101126
- Получить события стека вызовов из пользовательского индекса #102020
- [Профилирование] Рано уведомлять о отмене задачи #102740
- [Профилирование] Сообщить в API состояния, если документы существуют #102735
- Аутентификация
- Авторизация
-
- Удалить привилегию
auto_configureдля профилирования #101026 - Использовать
BulkRequestдля хранения привилегий приложения #102056 - Использовать не устаревший URL обратного вызова SAML в тестах SAML smoketests #99983 (проблема: #99986)
- Использовать не устаревший URL обратного вызова SAML в тестах #99983 (проблема: #99985)
- Удалить привилегию
- CAT API
-
- По умолчанию показывать роли в API cat allocation #101753
- CRUD
-
- Кэшировать разрешенный индекс для mgets #101311
- Потоки данных
- Распределённый
-
- Добавить поддержку настройки схемы прокси в настройках клиента S3 и плагине обнаружения EC2 #102495 (проблема: #101873)
- Ввести
StreamOutput, который подсчитывает количество байтов, записанных в поток #102906 - Отправить счёт запросов s3 через API метрик #100383
- Записывать назначение операции для сбора статистики s3 #100236
- EQL
- ES|QL
-
- ESQL: Добавить опцию
profile#102713 - ESQL: Изменить псевдонимы дублированных агрегаций в статистике #100642 (проблема: #100544)
- ESQL: Загружать несколько полей одновременно #102192
- ESQL: Последовательная загрузка сохранённых полей #102727
- ESQL: Загрузка текстового поля из родительского поля типа keyword #102490 (проблема: #102473)
- ESQL: Сделать блоки ссылочно-счётными #100408
- ESQL: Сделать вызовы fieldcaps менее ресурсоёмкими #102510 (проблемы: #101763, #102393)
- ESQL: Больше отслеживания в
BlockHashреализациях #101488 - ESQL: Новые команды телеметрии #102937
- ESQL: Общий доступ к блокам постоянной null ссылки #102673
- ESQL: Краткое замыкание загрузки пустых doc values #102434
- ESQL: Поддержка поля метаданных
_source#102391 - ESQL: Отслеживание блоков, выпущенных из lucene #101396
- ESQL: Отслеживание памяти, загруженной из lucene #101383
- Быстрый путь для чтения одного документа с порядковыми номерами #102902
- Введение локального фабричного блока #102901
- Загрузка другим способом #101235
- Отслеживание памяти ESQL enrich #102184
- Отслеживание блоков в
AsyncOperator#102188 - Отслеживание блоков промежуточного состояния агрегаций #102562
- Отслеживание блоков при хэшировании одиночного многозначного поля #102612
- Отслеживание страниц в запросе/ответе ESQL enrich #102190
- ESQL: Добавить опцию
- Двигатель
-
- Добавить статические настройки узла для установки значений по умолчанию для максимального размера объединённых сегментов #102208
- Geo
- Здоровье
- ILM+SLM
- API индексов
-
- Добавить выполненные конвейеры в ответ на API массового обновления #100031
- Добавить возможность помечать шаблоны компонентов как устаревшие #101148 (проблема: #100992)
- Разрешить обновление настроек индекса, не зависящих от динамики, автоматически через отключение фрагментов #101723
- Переименовать шаблоны компонентов и конвейеры в соответствии с новыми правилами именования #99975
- Запуск
TransportGetAliasesActionна локальном узле #101815
- Infra/CLI
-
- Установить
ActiveProcessorCount, когда установленоnode.processors#101846
- Установить
- Infra/Core
- Infra/Logging
-
- Добавить код состояния в журнал вывода
rest.suppressed#100990
- Добавить код состояния в журнал вывода
- Узел Ingest
- Машинное обучение
-
- Принимать один или несколько входов для
_inference#102075 - Добавить базовые данные телеметрии для функции вывода #102877
- Добавить внутреннее действие вывода для ML моделей и сервисов #102731
- Добавить опцию префиксных строк к обученным моделям #102089
- Более точно оценивать память, необходимую для развертывания обученных моделей #98874
- Повысить стабильность обнаружения пиков и спадов для агрегации точек изменения #102637
- Включить пределы процессора ML в ответ
_ml/info#101392 - Чтение оценок из загруженного словаря для токенизаторов XLM Roberta #101868
- Поддержка получения всех моделей и по типу задачи в API
_inference#102806
- Принимать один или несколько входов для
- Картирование
-
- Улучшить сообщение журнала перезагрузки анализатора #102273
- Мониторинг
- Сеть
-
- Запись более подробных статистических данных HTTP #99852
- Поиск
-
- Добавить метрики в кэш общих блоков #101577
- Добавить поддержку сербского языкового анализатора #100921
- Добавить поддержку
index_filterв открытые карьеры #102388 (задача: #99740) - Добавлена метрика для удаления элементов кэша с ненулевой частотой #100570
- Отключить межсегментную конкурентность при сортировке по полю #101535
- Включить параллелизм фазы запросов внутри одного фрагмента #101230 (задача: #80693)
- Статистика узлов как метрики #102248
- Оптимизировать
_countтипы запросов API #102888
- Безопасность
- Снимок/Восстановление
-
- Отказ от анализа репозитория S3 при частичном чтении #102840
- Параллельное удаление устаревших индексов #100316 (задача: #61513)
- Анализ репозитория поведения неконфликтных регистров #101185
- Анализ репозитория: разрешить настройку операций с регистрами #102051
- Анализ репозитория: проверить пустой регистр #102048
- Статистика
- Хранилище
- Преобразование
-
- Реализовать экспоненциальную задержку для повторных попыток сохранения состояния преобразования #102512 (задача: #102528)
- Разрешить таймауты задач, вычисляющих контрольные точки #101055
- Передать исходный запрос в
_field_caps(какindex_filter) при выводе сопоставлений целевого индекса для лучшей производительности #102379 - Передать исходный запрос преобразования как
index_filterв запросopen_point_in_time#102447 (задача: #101049) - Пропустить фрагменты, которые не соответствуют исходному запросу во время создания контрольных точек #102138
- Поиск векторов
Новые возможности
- Приложение
-
- Включить API коннекторов в качестве технического предварительного просмотра #102994
- [Анализ поведения] Коллекции аналитики используют жизненный цикл потоков данных (DSL) вместо управления жизненным циклом индексов (ILM) для управления удержанием данных. Аналитика поведения традиционно использовала ILM для управления удержанием данных. Начиная с 8.12.0, это изменится. Коллекции аналитики, созданные до 8.12.0, по-прежнему будут использовать свои существующие политики ILM, но новые коллекции аналитики будут управляться с помощью DSL. #100033
- Аутентификация
-
- Поддержка шаблонов для разрешенных субъектов по JWT-домену #102426
- Координация кластера
-
- Добавить барьер присоединения узла функции. Это предотвращает присоединение узлов к кластерам, не имеющим всех функций, уже присутствующих в кластере. Это гарантирует, что как только функция поддерживается всеми узлами в кластере, эта функция никогда больше не будет недоступна в будущем. Это соответствующая функциональность для барьера присоединения версии, но для функций #101609
- Потоки данных
-
- Добавить возможность создания хранилища сбоев потока данных #99134
- ES|QL
- Инфраструктура/Ядро
-
- Создать новый API состояния кластера для запроса функций, присутствующих в кластере #100974
- Узел Ingest
-
- Добавление API имитации ingest #101409
- Безопасность
-
- Разрешить выдачу API-ключа с JWT в качестве access_token #101904
- Поиск векторов
© 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/8.17/release-notes-8.12.0.html