|
| 1 | +Tarantool 2.10.3 |
| 2 | +================ |
| 3 | + |
| 4 | +Released on 2022-09-30. |
| 5 | + |
| 6 | +* Release: :tarantool-release:`2.10.3`. |
| 7 | +* Tag: ``2.10.3``. |
| 8 | + |
| 9 | +Overview |
| 10 | +-------- |
| 11 | + |
| 12 | +2.10.3 is the fourth |
| 13 | +:doc:`stable </release/policy/>` version of the 2.10 release series. |
| 14 | +It introduces 2 improvements and resolves 19 bugs since 2.10.2. |
| 15 | + |
| 16 | +The “stable” label means that we have all planned features implemented |
| 17 | +and we see no high-impact issues. However, if you encounter an issue, |
| 18 | +feel free to `report it <https://github.com/tarantool/tarantool/issues>`__ on GitHub. |
| 19 | + |
| 20 | +Compatibility |
| 21 | +------------- |
| 22 | + |
| 23 | +Tarantool 2.x is backward compatible with Tarantool 1.10.x in the binary |
| 24 | +data layout, client-server protocol, and replication protocol. |
| 25 | + |
| 26 | +Please :doc:`upgrade </book/admin/upgrades>` |
| 27 | +using the ``box.schema.upgrade()`` procedure to unlock all the new |
| 28 | +features of the 2.x series. |
| 29 | + |
| 30 | +Functionality added or changed |
| 31 | +------------------------------ |
| 32 | + |
| 33 | +Build |
| 34 | +~~~~~ |
| 35 | + |
| 36 | +- RedOS 7.3 is now supported. |
| 37 | +- Added the ``-DENABLE_HARDENING=ON/OFF`` CMake option that enables |
| 38 | + hardening against memory corruption attacks (:tarantool-issue:`7536`). |
| 39 | + |
| 40 | +Bugs fixed |
| 41 | +---------- |
| 42 | + |
| 43 | +Core |
| 44 | +~~~~ |
| 45 | + |
| 46 | +- Fixed a bug introduced in Tarantool 2.10.2: log messages could be |
| 47 | + written to data files thus causing data corruption. The issue was |
| 48 | + fixed by reverting the fix for :tarantool-issue:`4450`. |
| 49 | +- Switched from MT-Unsafe ``strerror()`` to MT-Safe ``strerror_r()``. |
| 50 | + The usage of the unsafe function could result in corrupted error |
| 51 | + messages. |
| 52 | +- Fixed a bug when a single JSON update couldn’t insert and update a |
| 53 | + field of a map or an array in two sequential calls. It would either |
| 54 | + crash or return an error (:tarantool-issue:`7705`). |
| 55 | + |
| 56 | +Memtx |
| 57 | +~~~~~ |
| 58 | + |
| 59 | +- Fixed incorrect handling of transaction conflicts in full scans by |
| 60 | + HASH indexes (:tarantool-issue:`7493`). |
| 61 | +- Fixed ``use after free`` that could occur in the transaction manager |
| 62 | + in certain states (:tarantool-issue:`7449`). |
| 63 | +- Fixed possible phantom reads with ``get`` on TREE indexes containing |
| 64 | + nullable parts (:tarantool-issue:`7685`). |
| 65 | +- Fixed an inconsistency in ``index:random`` in the context of |
| 66 | + transaction management (:tarantool-issue:`7670`). |
| 67 | +- Fixed unserializable reads tracked incorrectly after transaction |
| 68 | + rollbacks (:tarantool-issue:`7343`). |
| 69 | + |
| 70 | +Replication |
| 71 | +~~~~~~~~~~~ |
| 72 | + |
| 73 | +- Fixed a bug when a fiber committing a synchronous transaction could |
| 74 | + hang if the instance got a term bump during that or its synchro-queue |
| 75 | + was fenced in any other way (:tarantool-issue:`7253`). |
| 76 | +- Fixed master occasionally deleting xlogs needed by replicas even |
| 77 | + without a restart (:tarantool-issue:`7584`). |
| 78 | + |
| 79 | +Raft |
| 80 | +~~~~ |
| 81 | + |
| 82 | +- Fixed a bug when ``box.ctl.promote()`` could hang and bump thousands |
| 83 | + of terms in a row if called on more than one node at the same time |
| 84 | + (part of :tarantool-issue:`7253`). |
| 85 | +- Fixed a bug when a node with ``election_mode='voter'`` could hang in |
| 86 | + ``box.ctl.promote()`` or become a leader (part of :tarantool-issue:`7253`). |
| 87 | +- Fixed a bug when a replicaset could be split into parts if a node |
| 88 | + voted for another instance while having local WAL writes unfinished |
| 89 | + (part of :tarantool-issue:`7253`). |
| 90 | + |
| 91 | +Lua |
| 92 | +~~~ |
| 93 | + |
| 94 | +Merger |
| 95 | +^^^^^^ |
| 96 | + |
| 97 | +- Fixed ``use after free`` that could occur during iteration over |
| 98 | + ``merge_source:pairs()`` or ``merger:pairs()`` (:tarantool-issue:`7657`). |
| 99 | + |
| 100 | +Popen |
| 101 | +^^^^^ |
| 102 | + |
| 103 | +- Fixed a race condition in ``<popen handle>:signal()`` on Mac OS 12 |
| 104 | + and newer (:tarantool-issue:`7658`). |
| 105 | + |
| 106 | +Box |
| 107 | +~~~ |
| 108 | + |
| 109 | +- Fixed a bug when ``fiber.yield()`` might break the execution of a |
| 110 | + shutdown trigger (:tarantool-issue:`7434`). |
| 111 | +- Fixed a possible high CPU usage caused by shutdown triggers |
| 112 | + (:tarantool-issue:`6801`). |
| 113 | + |
| 114 | +Synchro |
| 115 | +~~~~~~~ |
| 116 | + |
| 117 | +- Fixed assertions in debug builds and undefined behaviour in release |
| 118 | + builds when simultaneous elections started or another instance was |
| 119 | + promoted while an instance was acquiring or releasing the synchro |
| 120 | + queue (:tarantool-issue:`7086`). |
| 121 | + |
| 122 | +Uri |
| 123 | +~~~ |
| 124 | + |
| 125 | +- Fixed a bug in the URI parser: tarantoolctl could not connect when |
| 126 | + the host name was skipped (:tarantool-issue:`7479`). |
0 commit comments