diff --git a/doc/release/enterprise-changelog.rst b/doc/release/enterprise-changelog.rst index 3479d639d..c33a60b8b 100644 --- a/doc/release/enterprise-changelog.rst +++ b/doc/release/enterprise-changelog.rst @@ -18,6 +18,135 @@ For example: ``2.11.1-0-gc42d9735b-r589``. - ``TARANTOOL_BASE_VERSION`` is the Community version which the Enterprise version is based on. - ``REVISION`` is the SDK revision. Besides Tarantool itself, it includes the ``tt`` utility, a set of open and closed source modules, and examples. Learn more from :ref:`Package contents `. +r708 +---- + +В релизе обновлены ключевые зависимости платформы: Tarantool до 2.11.9, модуль metrics до 1.7.0, +а также утилита tt-ee до 2.12.0, в которой завершается активная разработка ветки v2.x. +Дополнительно обновлён модуль ``graphqlapi-helpers`` до 0.0.11-1. + +Tarantool 2.11.8 -> 2.11.9 +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Это bugfix-релиз: исправлено 34 проблемы с предыдущей версии. + +* Версия 2.x — старая стабильная ветка; рекомендуется обновляться до 3.x. +* Совместимость: Tarantool 2.x и 3.x совместимы с точки зрения формата бинарных данных, клиент-серверного протокола и протокола репликации. +Это означает, что обновление можно выполнить без простоя для операций чтения, а для операций записи простой будет порядка сетевой задержки (см. `upgrade procedure `__). + +Далее перечислены изменения, видимые пользователю: + + +Tools +^^^^^ + +* Добавлены флаги ``misc.memprof.available`` и ``misc.sysprof.available`` для + определения доступности соответствующего профайлера в текущей сборке. + +Core +^^^^ + +* Исправлена ошибка, из-за которой Tarantool мог зависать из-за ``box.watch``. +* Исправлена ошибка, при которой файлы ``.xlog.inprogress`` не удалялись + автоматически во время запуска сервера, если ``wal_dir`` был задан не + значением по умолчанию. +* Добавлено новое встроенное системное событие ``box.wal_error``, которое + рассылается каждый раз, когда Tarantool не удаётся зафиксировать (commit) + транзакцию в журнале предзаписи (WAL). +* Исправлена ошибка, при которой локальный space нельзя было очистить + (truncate), если space ``_truncate`` был синхронным (synchronous). + +Election +^^^^^^^^ + +* Если при записи в WAL возникает ``ER_WAL_IO``, текущий лидер при первом же + таком случае отказывается от роли лидера. + +LuaJIT +^^^^^^ + +* Исправлена некорректная генерация ``IR_TBAR`` на aarch64. +* Исправлена обработка переполнения стека при выходе из trace. +* Исправлены «висячие» ссылки на ``CType``. +* Исправлено закрытие состояния VM после раннего OOM. +* Исправлена генерация ``IR_MUL`` на x86/x64. +* Исправлено некорректное объединение (fusion) инструкций ``stp``/``ldp`` на + aarch64. +* Исправлена инвалидизация записи SCEV при возврате в более низкий фрейм. +* Исправлена сборка на macOS 15 / Clang 16. +* Исправлена генерация ``IR_HREFK`` на aarch64. +* Добавлено ``ffi.abi("dualnum")``. +* Исправлены проверки стека в varargs-вызовах в сборке GC64. +* Исправлены проверки стека в ``pcall()``/``xpcall()`` в сборке GC64. +* Исправлен лимит аллокаций для сборки без JIT. +* Исправлена обработка ошибок OOM при расширении стека в ``coroutine.resume()`` + и ``lua_checkstack()``. +* Исправлена запись (recording) циклов со значением шага ``-0`` или управляющими + значениями ``NaN``. +* Исправлено формирование сообщений об ошибках, когда ошибка возникает во время + обработки ошибки. +* Исправлена «висячая» ссылка для FFI callback. +* Исправлен ``BC_UNM`` для аргумента ``-0`` в режиме dual-number. +* Исправлено сужение (narrowing) унарного минуса в режиме dual-number. +* Исправлена запись (recording) ``string.byte()``, ``string.sub()`` и + ``string.find()``. +* Исправлено отсутствие преобразования типов для слотов ``BC_FORI`` в режиме + dual-number. +* Исправлены различные пограничные случаи в VM events. +* Исправлена запись разрешения индекса конструктора в JIT-компиляторе. +* Исправлено предупреждение UBSan в ``unpack()``. + +Datetime +^^^^^^^^ + +* Исправлено падение из-за срабатывания ``assert`` при разборе неоднозначной + даты: когда в тексте одновременно указаны день года (``yday``, который + неявно задаёт месяц и день месяца) и календарный месяц (без дня месяца). + Теперь такие случаи распознаются, и выбрасывается ошибка. +* Исправлены вычисления ``tzoffset`` для случаев вида + ``new({timestamp=x, tz='Zone'})``. +* Исправлена неконсистентность между датами, создаваемыми + ``new({tzoffset=x})``, и ``d:set({tzoffset=x})``, когда ``d.tz ~= ''`` идёт + перед ``set()``. +* Теперь ``datetime.new()`` и ``datetime_object:set()`` проверяют, что значение + timestamp находится в допустимом диапазоне. +* Исправлена проверка типа timestamp в ``set()``. + +Для обратной совместимости добавлена опция +``compat.datetime_setfn_timestamp_type_check``. Сейчас она по умолчанию +выключена («старое» поведение), то есть проверка типа не выполняется. «Новое» +поведение (с проверкой типа) планируется сделать значением по умолчанию в +версии 4.x. + + +metrics 1.6.2 → 1.7.0 +~~~~~~~~~~~~~~~~~~~~~ + +* ``graphite``: добавлена возможность отправлять метрики на несколько серверов. +* Совместимость: обратная совместимость с предыдущей версией плагина сохранена. +* Изменения в поведении: + + - ``init`` теперь присваивает уникальное имя создаваемому файберу ``fiber`` на основе входных опций ``graphite server`` (если переданы). + - добавлен метод ``stop()`` для остановки всех файберов ``fibers``, запущенных плагином. + + +tt-ee v2.11.4 -> v2.12.0 +~~~~~~~~~~~~~~~~~~~~~~~~ + +Этот maintenance-релиз отмечает завершение активной разработки ветки v2.x. + +* Исправления, выявленные CVE-линтерами. +* ``tt pack``: добавлена поддержка вложенных файлов ``.packignore`` в корне + окружения tt. +* ``tt status``: добавлена опция ``--format`` для вывода в форматах JSON и YAML + (машиночитаемый вывод). + + +graphqlapi-helpers +~~~~~~~~~~~~~~~~~~ + +* Обновление модуля ``graphqlapi-helpers`` с 0.0.9-1 на 0.0.11-1. Новая версия работает без зависимостей от ``ddl-ee`` and ``crud-ee``. + r703 ----