Major features | Tarantool
Tarantool
Check out the new release policy
Release notes Major features

Major features

Every released version of Tarantool brings some notable features and fixes, which are all listed in the release notes.

To keep track of the major features in each version of the Tarantool easier, you can use the table below.

Later versions inherit features from earlier ones in the same release series. Note that versions before 2.10.* are numbered according to the legacy release policy, while versions 2.10.0-beta1 and later adhere to the current release policy. Versions that only include bug fixes are not listed in this table.

Since version Feature
2.10.0-rc1 Transaction isolation levels in Lua and IPROTO (gh-6930)
Fencing and pre-voting in RAFT (gh-6661)
Foreign keys and constraints support (gh-6436)
New DATETIME type
2.10.0-beta2 HTTP/2 support for the HTTP client
Preliminary support for the new DATETIME type (gh-5941)
2.10.0-beta1 Preliminary support for GNU/Linux ARM64 and MacOS M1 (gh-2712, gh-6065, gh-6066, gh-6084, gh-6093, gh-6098, gh-6189)
Streams and interactive transactions in iproto (gh-5860)
Consistent SQL type system
Faster net.box module performance (improved up to 70%) (gh-6241)
Compact mode for tuples (gh-5385)
memtx_allocator option in box.cfg{} (gh-5419)
2.8.2 Symbolic log levels in the log module (gh-5882)
2.7.3, 1.10.11 LJ_DUALNUM mode support in luajit-gdb (gh-6224)
2.7.3 New table.equals method in Lua
2.7.3 box.info.synchro interface for synchronous replication statistics (gh-5191)
2.8.1 Multiple iproto threads (gh-5645)
2.8.1 Set box.cfg options with environment variables (gh-5602)
2.8.1 Friendly LuaJIT memory profiler report (gh-5811)
2.8.1 --leak-only LuaJIT memory profiler option (gh-5812)
2.7.1 LuaJIT memory profiler (gh-5442)
2.7.1 SQL ALTER TABLE ADD COLUMN statement support for empty tables (gh-2349, gh-3075)
2.6.3, 2.7.2 The concept of WAL queue (gh-5536)
2.6.3, 2.7.2, 2.8.1 box.ctl.promote() and the concept of manual elections (gh-3055)
2.6.1 LuaJIT platform metrics (gh-5187)
2.6.1 Automated leader election based on Raft algorithm (gh-1146)
2.6.1 Transactional manager for memtx engine (gh-4897)
2.5.3, 2.6.2, 2.7.1 Expression evaluation for replication_synchro_quorum (gh-5446)
2.5.3, 2.6.2 box.ctl.is_recovery_finished() for memtx engine (gh-5187)
2.5.1 Synchronous replication (beta) (gh-4842)
2.5.1 Allow an anonymous replica to follow another anonymous replica (gh-4696)
2.4.1 UUID type for field and index (gh-4268, gh-2916)
2.4.1 popen built-in module (gh-4031)
2.4.1 Ability to create custom error types (gh-4398)
2.4.1 Transparent marshalling through net.box (gh-4398)
2.4.1 Stacked diagnostic area (gh-1148)
2.3.1 Field name and JSON path updates (gh-1261)
2.3.1 Anonymous replica type (gh-3186)
2.3.1 DOUBLE type in SQL (gh-3812)
2.3.1 Support of decimals in spaces, decimal field type (gh-4333)
2.3.1 fiber.top() function in Lua (gh-2694)
2.3.1 Feed data from memory during replica initial join (gh-1271)
2.3.1 SQL prepared statements support and cache (gh-2592, gh-3292)
2.3.1 _session_settings service space (gh-4511)