Миграция на 8.15
В этом разделе рассматриваются изменения, которые необходимо учитывать при миграции вашего приложения на Elasticsearch 8.15.
См. также Что нового в 8.17 и Справочные заметки.
Поступит в 8.15.0.
Изменения
Следующие изменения в Elasticsearch 8.15 могут повлиять на ваши приложения и помешать их нормальной работе. Перед обновлением до 8.15 ознакомьтесь с этими изменениями и выполните описанные шаги, чтобы смягчить влияние.
Изменения настроек кластера и узлов
Изменения агрегации
Запрет создания новых задач агрегации в кластерах без использования агрегации
Подробности
API put rollup вернет ошибку при создании задачи агрегации в кластере без использования агрегации.
Воздействие
Кластеры без использования агрегации (нет задачи агрегации или индекса) не могут создавать новые задачи агрегации.
Изменения REST API
Интерпретация ?timeout=-1 как бесконечного таймаута подтверждения
Подробности
Сегодня Elasticsearch принимает параметр ?timeout=-1 во многих API, но интерпретирует его как эквивалентный значению ?timeout=0. Начиная с 8.15, ?timeout=-1 будет означать бесконечное ожидание, что согласуется с поведением этого параметра с другими аналогичными параметрами, такими как ?master_timeout.
Воздействие
Используйте ?timeout=0, чтобы заставить соответствующие операции немедленно завершиться с ошибкой вместо ?timeout=-1
Замена model_id на inference_id в API GET inference
Подробности
Начиная с 8.15, ответ API Get inference API будет возвращать поле inference_id вместо model_id.
Воздействие
Если ваше приложение использует поле model_id в ответе API GET inference, замените его на inference_id.
Устаревшие функции
Следующие функции устарели в Elasticsearch 8.15 и будут удалены в будущей версии. Хотя это не окажет немедленного влияния на ваши приложения, мы настоятельно рекомендуем выполнить описанные шаги по обновлению кода после обновления до 8.15.
Чтобы узнать, используете ли вы устаревшие функции, включите журналирование устаревших функций.
Устаревшие настройки кластера и узлов
Устаревание абсолютных значений размера для параметра indices.breaker.total.limit
Подробности
Раньше значение параметра indices.breaker.total.limit можно было задавать как абсолютное значение в байтах. Этот параметр управляет общим объемом памяти, который сервер разрешено использовать, прежде чем будут предприняты корректирующие действия. Задание этого значения конкретным числом байт приводило к странному поведению при изменении максимального размера кучи узла, потому что предел разрыва схемы оставался неизменным. Это приводило к тому, что значение либо слишком низкое, что приводило к частичному неиспользованию кучи; либо слишком высокое, что делало неэффективным разрыв схемы при предотвращении ошибок OOM. Единственно разумным поведением для этого параметра является масштабирование с размером кучи, поэтому абсолютные пределы в байтах теперь устарели.
Воздействие
Пользователи должны изменить конфигурацию, указав процент вместо абсолютного числа байт для параметра indices.breaker.total.limit, или принять значение по умолчанию, которое уже задано в процентах.
Устаревшие функции REST API
Устаревание запросов text_expansion и weighted_tokens
Подробности
Запросы text_expansion и weighted_tokens заменены запросами sparse_vector.
Воздействие
Пожалуйста, обновите ваши существующие запросы text_expansion и weighted_tokens на использование запросов sparse_vector.
Устаревание использования привилегий slm для доступа к ilm
Подробности
Привилегия read_slm может получить статус ILM, а привилегия manage_slm может начать и остановить ILM. Доступ к этим API должен быть предоставлен с использованием привилегий read_ilm и manage_ilm. Доступ к API ILM будет удален из привилегий SLM в будущей основной версии и теперь устарел.
Воздействие
Пользователям, которым нужен доступ к API статуса ILM, теперь следует использовать привилегию read_ilm. Пользователям, которым нужно запускать и останавливать ILM, следует использовать привилегию manage_ilm.
© 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/migrating-8.15.html