Date: 2023-03-22
Tag: 2.10.6

## Overview

2.10.6 is the 7th [stable][release_policy] version of the 2.10 release
series. It resolves 3 bugs since 2.10.5.

The "stable" label means that we have all planned features implemented and we
see no high-impact issues. However, if you encounter an issue, feel free to
[report it][issues] on GitHub.

[release_policy]: https://www.tarantool.io/en/doc/latest/dev_guide/release_management/#release-policy
[issues]: https://github.com/tarantool/tarantool/issues

## Compatibility

Tarantool 2.x is backward compatible with Tarantool 1.10.x in the binary data
layout, client-server protocol, and replication protocol.

Please [upgrade][upgrade] using the `box.schema.upgrade()` procedure to unlock
all the new features of the 2.x series.

[upgrade]: https://www.tarantool.io/en/doc/latest/book/admin/upgrades/

## Bugs fixed

### Core

* Fixed various bugs related to unsafe (i.e., coming from an unknown source)
  decoding and validating of MsgPack extensions (ghs-73).

### LuaJIT

Backported patches from the vanilla LuaJIT trunk (gh-8069). The following issues
were fixed as part of this activity:

* Fixed successful `math.min/math.max` call with no args (gh-6163).
* Fixed inconsistencies in `math.min/math.max` calls with a NaN arg (gh-6163).
* Fixed `pcall()` call without arguments on arm64.
* Fixed assembling of `IR_{AHUV}LOAD` specialized to boolean for aarch64.
* Fixed constant rematerialization on arm64.

### Box

* Fixed a bug where `box.cfg.force_recovery` doesn't work when there is no user
  spaces in a snapshot (gh-7974).
