Журнал изменений¶
Versioning policy¶
Версия Tarantool Enterprise SDK состоит из двух частей:
<TARANTOOL_BASE_VERSION>-r<REVISION>
Например: 2.6.1-0-gcfe0d1a55-r362
.
TARANTOOL_BASE_VERSION
— это версия Community, на которой основана версия Enterprise.REVISION
is the SDK revision. Beside Tarantool itself, it includes examples, templates, and a set of rocks.
r467¶
Breaking changes¶
- Default audit log format was changed to CSV.
Functionality added or changed¶
Enterprise¶
- Implemented user-defined audit events. Now it’s possible to log custom messages to the audit log from Lua (gh-65).
- [Breaking change] Switched the default audit log format to CSV. The
format can be switched back to JSON using the new
box.cfg.audit_format
configuration option (gh-66). - Implemented the audit log filter. Now, it’s possible to enable logging only
for a subset of all audit events using the new
box.cfg.audit_filter
configuration option (gh-67).
Core¶
- Implement constraints and foreign keys. Now a user can create function constraints and foreign key relations (gh-6436).
- Changed log level of some information messages from critical to info (gh-4675).
- Added predefined system events:
box.status
,box.id
,box.election
andbox.schema
(gh-6260). - Introduced transaction isolation levels in Lua and IPROTO (gh-6930).
Vinyl¶
- Disabled the deferred DELETE optimization in Vinyl to avoid possible
performance degradation of secondary index reads. Now, to enable the
optimization, one has to set the
defer_deletes
flag in space options (gh-4501).
Datetime¶
Build¶
- Added bundling of GNU libunwind to support backtrace feature on AARCH64 architecture and distributives that don’t provide libunwind package.
- Re-enabled backtrace feature for all RHEL distributions by default, except for AARCH64 architecture and ancient GCC versions, which lack compiler features required for backtrace (gh-4611).
Bugs fixed¶
Enterprise¶
- Disabled audit log unless explicitly configured (gh-39). Before this change,
audit events were written to stderr if
box.cfg.audit_log
wasn’t set. Now, audit log is disabled in this case. - Disabled audit logging of replicated events (gh-59). Now, replicated events (for example, user creation) are logged only on the origin, never on a replica.
Core¶
- Banned DDL operations in space on_replace triggers, since they could lead to a crash (gh-6920).
- Fixed a bug due to which all fibers created with
fiber_attr_setstacksize()
leaked until the thread exit. Their stacks also leaked except whenfiber_set_joinable(..., true)
was used. - Fixed a crash in mvcc connected with secondary index conflict (gh-6452).
- Fixed a bug which resulted in wrong space count (gh-6421).
- Select in RO transaction now reads confirmed data, like a standalone (auotcommit) select does (gh-6452).
Replication¶
- Fixed potential obsolete data write in synchronious replication due to race in accessing terms while disk write operation is in progress and not yet completed.
- Fixed replicas failing to bootstrap when master is just re-started (gh-6966).
Lua¶
- Fixed the behavior of tarantool console on SIGINT. Now Ctrl+C discards the current input and prints the new prompt (gh-2717).
Triggers¶
Datetime¶
Intervals received after datetime arithmetic operations may be improperly normalized if result was negative
tarantool> date.now() - date.now() --- - -1.000026000 seconds ...
I.e. 2 immediately called
date.now()
produce very close values, whose difference should be close to 0, not 1 second (gh-6882).
r457¶
- Fixed some binary protocol encryption bugs.
r455¶
- Added binary protocol encryption.
- Added tuple field compression.
r422¶
- Добавлен модуль (rock) space-explorer
v1.1.4
без флага permanency и с меньшим размером сборки.
r421¶
Обновлены базовые версии:
- 1.10.11-0-gf0b0e7ecf
- 2.7.3-0-gdddf926c3
- 2.8.2-0-gfc96d10f5
Исправлен журнал аудита.
r419¶
Исправлена проблема совместимости с Tarantool 2.9:
- Добавлен модуль
errors
2.2.1. - Модуль
cartridge
2.7.0 обновлен до версии 2.7.1.
r418¶
- Добавлен модуль
cartridge
2.7.0. (Журнал изменений) - Добавлен модуль
membership
2.4.0. (Журнал изменений) - Добавлен модуль
ddl
1.5.0. (Журнал изменений) - Добавлен модуль
vshard
0.1.18. (Журнал изменений) - Добавлен модуль
frontend-core
7.10.0. (Журнал изменений) - Добавлен модуль
luatest
0.5.4. (Журнал изменений) - Добавлен модуль
cartridge-extensions
1.1.0. (Журнал изменений)
r417¶
- Нет заметных изменений.
r416¶
- Добавлен модуль
metrics
0.10.0. (Журнал изменений)
r415¶
- Утилита Cartridge CLI обновлена до v2.10.0. (Журнал изменений)
r414¶
Обновлены базовые версии:
- 1.10.10-52-g0df29b137
- 2.7.2-110-g51248c7d2
- 2.8.1-119-g1b0050564
Самое важное изменение: исправлена проблема, описанная в тикете gh-4040.
r413¶
- Добавлен модуль
migrations
0.4.1.
r412¶
- Модуль ldap обновлен с версии 1.0.1 до 1.0.2, исправлены ошибки.
r411¶
- Добавлен модуль
expirationd
1.1.0. (Журнал изменений)
r410¶
- Добавлен модуль
crud
0.8.0. (Журнал изменений) - Добавлен модуль
luatest
0.5.3. (Журнал изменений)
r409¶
- Добавлен модуль
tuple-merger
0.0.2. (Журнал изменений)
r408¶
- Добавлен модуль
crud
0.7.1 вместо неисправной версии 0.7.0. (Журнал изменений)
r407¶
- Добавлен модуль
crud
0.7.0. (Журнал изменений) - Добавлен модуль
tuple-keydef
0.0.2. (Журнал изменений) - Модуль
watchdog
обновлен с версии 1.0.1 до 1.1.1. (Журнал изменений) - Модуль ldap обновлен с версии 1.0.0 до 1.0.1, исправлены ошибки.
- Добавлен модуль
space-explorer
1.1.3 с улучшенной совместимостью при перезагрузке ролей.
r406¶
- Добавлен модуль
metrics
0.9.0. (Журнал изменений)
r405¶
- Добавлен модуль
errors
2.2.0. (Журнал изменений)
r404¶
- Добавлен модуль
smtp
0.0.6. (Журнал изменений)
r403¶
- Утилита Cartridge CLI обновлена до v2.9.1. (Журнал изменений)
r402¶
- Добавлен модуль
odbc
1.0.1. (Журнал изменений)
r401¶
Добавлены инструменты для сбора артефактов сбоев:
tools/gdb.sh
tools/tarabrt.sh
Также перемещено расширение LuaJIT gdb:
tools/luajit-gdb.py
r400¶
- Утилита Cartridge CLI обновлена до v2.9.0. (Журнал изменений)
- Добавлен модуль
cartridge
2.6.0. (Журнал изменений) - Добавлен модуль
ddl
v1.4.0. (Журнал изменений) - Добавлен модуль
vshard
v0.1.17. (Журнал изменений) - Добавлен модуль
membership
v2.3.2. (Журнал изменений) - Добавлен модуль
frontend-core
7.7.0. (Журнал изменений) - Добавлен модуль
graphql
v0.1.1. (Журнал изменений)
r399¶
Обновлены базовые версии:
- 1.10.10-0-gaea7ae77a
- 2.6.3-0-gcd487a2c5
- 2.7.2-0-g4d8c06890
- 2.8.1-0-ge2a1ec0c2
r398¶
- Добавлен модуль
metrics
v0.8.0. (Журнал изменений)
r397¶
- Добавлен модуль
queue
1.1.0. (Журнал изменений)
r396¶
- Нет заметных изменений.
r395¶
- Добавлен модуль task v.0.8.4. (Журнал изменений)
r394¶
- Утилита Cartridge CLI обновлена до v2.8.0. (Журнал изменений)
r392¶
- Добавлен модуль
crud
v0.6.0. (Журнал изменений)
r391¶
- Добавлен модуль
cartridge
v2.5.1. (Журнал изменений) - Добавлен модуль
cartridge-cli-extensions
v1.1.1. (Журнал изменений) - Добавлен модуль
errors
v2.1.5. (Журнал изменений) - Утилита Cartridge CLI обновлена до v2.7.2. (Журнал изменений)
r390¶
- Базовая версия 2.6 обновлена до
2.6.2-124-g2c3b91439
. - Добавлен модуль
metrics
0.7.1. (Журнал изменений) - Добавлен модуль
watchdog
1.1.0 с новой возможностью совершать дампы памяти. - Расширение LuaJIT gdb упаковано.
r389¶
- Исправлен поиск сертификатов OpenSSL.
- Исправлена совместимость модуля smtp (только Tarantool 2.6, 2.7).
r388¶
- Утилита Cartridge CLI обновлена до v2.7.1. (Журнал изменений)
r387¶
- Добавлен модуль
odbc
v1.0.0.
r386¶
- Утилита Cartridge CLI обновлена до v2.7.0. (Журнал изменений)
r385¶
- Добавлен модуль
crud
v0.5.0. (Журнал изменений)
r384¶
- Добавлен модуль
cartridge
v2.5.0. - Добавлен модуль
frontend-core
v7.5.0 (зависимость Cartridge). - Модуль luarapidxml обновлен с 2.0.1 до 2.0.2.
r383¶
- Добавлен модуль
luagraphqlparser
v0.1.0. - Добавлен модуль
graphql
v0.1.0.
r382¶
- Утилита Cartridge CLI обновлена до v2.6.0. (Журнал изменений)
r381¶
- Добавлен модуль
space-explorer
v1.1.2 с исправленными стилями.
r380¶
- Добавлен модуль
metrics
v0.7.0.
r376¶
- Добавлен модуль
migrations
v0.4.0.
r375¶
- Обновлены базовые версии:
- 1.10.9-0-g720ffdd23
- 2.5.3-0-gf93e48013
- 2.6.2-0-g34d504d7d
- 2.7.1-0-g3ac498c9f
r372¶
- Добавлен модуль
frontend-core
v7.4.0 (зависимость Cartridge). - Добавлен модуль
metrics
v0.6.1. (Журнал изменений). - Добавлен модуль
kafka
v1.3.1. (Журнал изменений).
r371¶
- Добавлен модуль
ddl
v1.3.0. (Журнал изменений)
r370¶
- Добавлен модуль
cartridge
v2.4.0. (Журнал изменений) - Добавлен модуль
metrics
v0.6.0. (Журнал изменений) - Утилита Cartridge CLI обновлена до v2.5.0. (Журнал изменений)
- Добавлен модуль
cartridge-cli-extensions
v1.1.0. (Журнал изменений) - Добавлен модуль
crud
v0.4.0. (Журнал изменений)
r369¶
- Модуль
luarapidxml
обновлен с версии 2.0.0 до 2.0.1.
r368¶
- Модуль
migrations
обновлен до версии 0.3.1.
r366¶
- Модуль
kafka
обновлен до версии 1.3.0. Версии 1.2.0 и более ранние удалены, исправлена критическая ошибка.
r363¶
- Модуль
oracle
обновлен с версии 1.3.0 до 1.3.2, исправлена критическая ошибка.
r360¶
- Обновлены базовые версии:
- 1.10.8-0-g2f18757b7
- 2.4.3-0-g5180d98f1
- 2.5.2-0-g05730d326
- 2.6.1-0-gcfe0d1a55
1.10.6-16, 2.2.2-56, 2.3.1-143 и 2.4.2-8¶
Изменения:
- Версия Tarantool 1.10 обновлена до 1.10.6-16-g4764acd68.
- Версия Tarantool 2.2 обновлена до 2.2.2-56-g62efd9cf6.
- Добавлена версия Tarantool 2.3 (2.3.1-143-g8124538b8).
- Добавлена версия Tarantool 2.4 (2.4.2-8-ge56224b).
- Утилита
cartridge-cli
обновлена до v2.4.0. - Удалены все модули
cartridge-cli
. - Обновлен модуль
vshard-zookeeper
.
Добавлено:
- Модуль
kafka
v1.2.0. - Модуль
task
v0.8.3. - Модуль
kafka
v1.1.0. - Модуль
vshard
v0.1.15. - Модуль
odbc
v0.5.0, v0.6.4, v0.7.2, v0.7.3. - Модуль
cartridge
v2.1.2. - Модуль
cartridge
v2.2.1. - Модуль
cartridge
v2.3.0. - Модуль
icu-date
v1.3.3. - Модуль
ddl
v1.1.0. - Модуль
errors
v2.1.3. - Модуль
errors
v2.1.4. - Модуль
frontend-core
v6.5.1. - Модуль
frontend-core
v7.1.0. - Модуль
luatest
v0.5.2. - Модуль
metrics
v0.3.0. - Модуль
metrics
v0.4.0. - Модуль
metrics
v0.5.0. - Модуль
http
v2.1.0. - Модуль
luacheck
v0.26.0. - Модуль
luacov-reporters
v0.1.0 — генераторы отчетов LuaCov. - Модуль
migrations
v0.3.0. - Модуль
checks
v3.1.0. - Модуль
crud
v0.3.0. - Модуль
cartridge-cli-extensions
v1.0.0.
Удалено:
- Модуль
quickfix
v1.0.0.
1.10.5-12 / 2.1.3-1 / 2.2.2-3¶
Дата релиза: 2020-02-07
Начиная с этого релиза, мы выпускаем сборки Enterprise на основе Tarantool Community 2.2. В этих сборках поддерживаются числовой тип decimal, многозначные (multikey) индексы, функциональные индексы, модуль key_def
, частичные дампы памяти, передача формата кортежей по netbox
, параллельный applier и т. д.
Изменения:
- Базовая версия Tarantool Community обновлена до:
- 1.10.5-15-gcfd9d54ae
- 2.1.3-16-g7dd5910
- 2.2.2-29-g5c8a435df
- Модуль
cartridge-cli
v1.4.0: локальный запуск кластера, цветные логи, упаковка docker-образов и dev-пакетов, обновленные шаблоны и многое другое.
Добавлено:
- Модуль
cartridge-cli
v1.3.2. - Модуль
cartridge
v2.0.1: значительные улучшения в работе восстановления после сбоев, общекластерные DDL-схема и редактор конфигурации, а также много мелких изменений. - Модуль
task
v0.7.1: поддержка режима шардирования, возможность указывать аргументы задач, конфигурацию по умолчанию, стратегию повторов и анонимные задачи. - Модуль
luatest
v0.5.0: сборки с автоматическим покрытием тестами, цветные логи и много мелких улучшений. - Модуль
luatest
v0.4.0. - Модуль
ddl
v1.0.0: общекластерная DDL-схема, которая используется вcartridge
v2.0.0. - Модуль
luacov
v0.13.0: анализатор покрытия кода для Lua. - Модуль
odbc
v0.4.1. - Модуль
avro-schema
v3.0.4. - Модуль
vshard
v0.1.14. - Модуль
tracing
v0.1.1. - Модуль
oracle
v1.3.0. - Модуль
watchdog
v1.0.2. - Модуль
metrics
v0.1.7 и v0.1.8. - Модуль
queue
v1.0.5. - Модуль
membership
v2.2.0.
1.10.4-1 / 2.1.2-109¶
Дата релиза: 2019-10-23
Главные новости:
- Фреймворк для разработки кластерных приложений (Tarantool Cartridge) стал частью Tarantool с открытым кодом. Теперь Cartridge представлен двумя модулями: cartridge (вместо модуля
cluster
) и cartridge-cli (вместо утилитыtarantoolapp
). - Добавлен новый открытый модуль luacheck — статический анализатор кода для Lua, предконфигурированный под Tarantool.
- Для всех модулей с закрытым кодом добавлена документация.
- Обновлен дизайн веб-интерфейса администратора.
Изменения:
- Базовая версия Tarantool Community обновлена до:
- 1.10.4-21-g9349237
- 2.1.2-206-g2499a73
- Обновлен модуль
vshard-zookeeper
.
Добавлено:
- Модуль
quickfix
v1.0.0. - Модуль
luarapidxml
v2.0.0. - Модуль
cartridge
v1.0.0 (вместо модуляcluster
). - Модуль
cartridge-cli
v1.0.0-1 (вместо утилитыtarantoolapp
). - Модуль
task
v0.4.0. - Модуль
membership
v2.1.2, улучшение стабильности на больших кластерах. - Модуль
membership
v2.1.4. - Модуль
odbc
v0.3.0. - Модуль
cluster
v0.10.0. - Модуль
task
v0.3.0. - Модуль
odbc
v0.4.0. - Модуль
kafka
v1.0.2. - Модуль
frontend-core
v6.0.1. - Модуль
space-explorer
v1.1.0. - Модуль
oracle
v1.2.2. - Модуль
http
v1.1.0. - Модуль
avro-schema
v3.0.3. - Модуль
vshard
v0.1.12. - Модуль
icu-date
v1.3.1. - Модуль
luatest
v0.2.2. - Модуль
metrics
v0.1.6. - Модуль
queue
v1.0.4.
Удалено:
- Утилита
tarantoolapp
.
1.10.3-71 / 2.1.2-63¶
Дата релиза: 2019-07-12
Изменения:
- Базовая версия Tarantool Community обновлена до:
- 1.10.3-89-g412e943
- 2.1.2-127-gcb2f5e4
Добавлено:
- Шаблоны юнит-тестов и интеграционных тестов для кластера Tarantool, доступные через
tarantoolctl rocks test
. - При сборке проекта теперь можно исключать ресурсы с помощью файлов
.tarantoolapp.ignore
. - Модуль
kafka
v1.0.1 (коннектор Apache Kafka для Tarantool). - Модуль
tracing
v0.1.0 для отладки производительности приложения. Реализован на базе OpenTracing/Zipkin. - Модуль
task
v0.2.0 для работы с фоновыми задачами в кластерных приложениях. - Модуль
odbc
v0.1.0 (исходящий ODBC-коннектор для Tarantool). - Модуль
luatest
v0.2.0 (тестовый фреймворк для Tarantool). - Модуль
checks
v3.0.1. - Модуль
errors
v2.1.1. - Модуль
frontend-core
v5.0.2. - Модуль
metrics
v0.1.5. - Модуль
oracle
v1.1.6. - Модуль
cluster
v0.9.2 с новыми функциональными возможностями:- Users, новая вкладка веб-интерфейса для управления пользователями-администраторами кластера.
- Для наборов реплик storage в одном кластере можно задавать группы (например, группы
hot
иcold
для независимой обработки горячих и холодных данных). - Вспомогательные утилиты для интеграционных тестов на
luatest
.
Удалено:
- Модуль
cluster
v0.2.0, v0.3.0. - Модуль
oracle
v1.0.0, v1.1.0. - Модуль
vshard
v0.1.5, v0.1.6.
1.10.3-29 / 2.1.2-21¶
Дата релиза: 2019-05-28
Начиная с этого релиза, мы выпускаем сборки Enterprise на основе Tarantool Community 2.1.
Изменения:
- Базовая версия Tarantool Community обновлена до:
- 2.1.2-85-g6b01fa0
- 1.10.3-57-gd2efb0d
Добавлено:
- Команда
tarantoolapp pack
теперь добавляет в упакованный проект файл VERSION. - Возможность задавать уровень детализации записей журнала для каждого маршрута.
- Модуль
http
v0.1.6 с новой возможностью определять уровень детализации записей журнала для каждого маршрута. - Модуль
space-explorer
v1.0.2. - Модуль
cron-parser
v1.0.0. - Модуль
argon2
v3.0.1 с алгоритмами хеширования класса PCI DSS. - Модуль
metrics
v0.1.3. - Модуль
vshard
v0.1.9. - Модуль
oracle
v1.1.5. - Модуль
frontend-core
v5.0.0, v5.0.1. - Модуль
cluster
v0.8.0 с исправленными ошибками и новыми возможностями:- зависимостями для ролей;
- кластерными cookies;
- метками для серверов.
1.10.3-5¶
Дата релиза: 2019-04-05
- Базовая версия Tarantool Community обновлена до 1.10.3-6-gfbf53b9.
- Добавлены следующие функциональные возможности:
- Настройка приоритета восстановления после сбоев через веб-интерфейс.
- Модуль RPC (удаленные вызовы между экземплярами кластера).
- Space-explorer в веб-интерфейсе.
- Клиент OpenLDAP для Tarantool.
- При перезапуске экземпляра конфигурация теперь проверяется до инициализации ролей.
- Обновлен дизайн веб-интерфейса.
1.10.2-41¶
Дата релиза: 2019-02-08
- Базовая версия Tarantool Community обновлена до 1.10.2-131-g6f96bfe.
- Обновлен шаблон кластера, чтобы приложение могло работать на нескольких хостах (виртуальных машинах).
- Добавлены последние версии следующих модулей с закрытым исходным кодом:
queue
,front
,errors
,membership
,cluster
иoracle
. Эти модули rocks включают в себя:- новое ядро фронтенда с косметическими изменениями;
- индикатор активного мастера во время восстановления после сбоев;
- возможность отключить роль
vshard-storage
по окончании процесса балансировки; - обновление зависимостей и незначительные улучшения.
1.10.2-15¶
Дата релиза: 2018-12-13
- Базовая версия Tarantool Community обновлена до 1.10.2-84-g19d471bd4.
- Обновлена сборка модуля
checks
. - В модуль
cluster
добавлены пользовательские API для кластерных ролей. - Добавлена поддержка параметра веса для наборов реплик в
vshard
.
1.10.2-4¶
Дата релиза: 2018-10-31
- Добавлены примеры приложений, демонстрирующих запуск Tarantool в Docker и использование кэша со сквозной записью для PostgreSQL.
- В веб-интерфейсе добавлена возможность переключать мастер в наборе реплик вручную, а также включить автоматическое восстановление после сбоев.
- Добавлена утилита
tarantoolapp
, которая помогает настроить среду разработки и упаковать приложение независимо от среды разработки.
1.10.1-29¶
Дата релиза: 2018-10-04
- Приложение-пример теперь кластерное, а оркестрация кластера выполняется через веб-интерфейс.
- Релиз Tarantool Enterprise представляет собой архив. Он включает в себя автономный репозиторий, из которого можно установить все необходимые модули.
- В репозиторий с модулями добавлен коннектор для Oracle. Теперь Lua-приложения могут получать доступ к базам данных Oracle.
1.10.1¶
Дата релиза: 2018-04-09
- Теперь у Tarantool статическая сборка: все зависимости скомпонованы в статический бинарный файл. Это упрощает развертывание Tarantool в среде Linux.
- Базовая версия Tarantool Community обновлена до 1.10.1. Описание новых возможностей и исправленных ошибок в версии Community доступно по ссылке https://github.com/tarantool/tarantool/releases.
- Модули, необходимые для интеграции с ZooKeeper и orchestrator, объявлены устаревшими и больше не поддерживаются.