Tarantool Enterprise SDK version consists of two parts:
TARANTOOL_BASE_VERSIONis the Community version which Enterprise version is based on.
REVISIONis the SDK revision. Besides Tarantool itself, it includes examples, templates, and a set of rocks.
- Updated Tarantool to 2.10.1.
- Updated Cyrus SASL to version 2.1.28.
- Updated OpenLDAP to version 2.5.13.
- Updated LZ4 to version 1.9.3. Fixed CVE-2021-3520.
- Fixed replication reconnect failure after disabling SSL encryption (gh-137).
- Fixed a crash that occurred while tyring to start an instance that has a compressed memtx space (gh-171).
- Fixed CVE-2022-29242 in GOST SSL engine.
- Fixed a bug in the flight recorder reader implementation that resulted in a hang or error while trying to open an empty section (gh-187).
- Default audit log format was changed to CSV.
Functionality added or changed¶
- 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_formatconfiguration 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_filterconfiguration option (gh-67).
- 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:
- Introduced transaction isolation levels in Lua and IPROTO (gh-6930).
- 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_deletesflag in space options (gh-4501).
- 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).
- Disabled audit log unless explicitly configured (gh-39). Before this change,
audit events were written to stderr if
box.cfg.audit_logwasn’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.
- 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 when
fiber_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).
- 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).
- Fixed the behavior of tarantool console on SIGINT. Now Ctrl+C discards the current input and prints the new prompt (gh-2717).
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).
- Fixed some binary protocol encryption bugs.