Commits
- Commit:
d32b2fe90d4d0595c13f1014f391c463c3780cbb
- From:
- Sergey Bronnikov <sergeyb@tarantool.org>
- Date:
test: enable remote console for debug
The remote console is enabled for debugging purposes.
It can be helpful when Tarantool is stuck and one need an access
to console to gather an additional information about Tarantool
(like `fiber.info` output or anything else).
NO_CHANGELOG=testing
NO_DOC=testing
- Commit:
9dbaa6a9bc0d65984b417f8a76aa8373b6125d16
- From:
- Vladimir Davydov <vdavydov@tarantool.org>
- Via:
- Vladimir Davydov <vdavydov.dev@gmail.com>
- Date:
vinyl: handle error loading statement from disk during key lookup
`vy_page_stmt()` may fail (return NULL) if:
- the statement is corrupted;
- memory allocation for the statement fails;
- the statement size exceeds `box.cfg.vinyl_max_tuple_size`.
If this happens `vy_page_find_key()` won't return an error. Instead,
it'll either point the caller to a wrong statement or claim that there's
no statement matching the key in this page. This may result in invalid
index selection results and, later on, a crash caused by inconsistencies
in the tuple cache. The issue was introduced by commit ac8ce0233a00
("vinyl: factor out function to lookup key in page").
All of the three cases are actually very unlikely to happen in
production:
- If a statement stored in a run file is corrupted, we'll probably fail
to load the whole page due to failed checksums and never even get to
`vy_page_stmt()`.
- Statements are allocated with `malloc()`, which doesn't normally
fail (instead the whole process would be terminated by OOM) .
- Users don't tend to lower the tuple size limit after restart.
Still, let's fix the issue by implementing proper error handling for
`vy_page_find_key()`.
Closes #10512
NO_DOC=bug fix
- Commit:
bd510bb5cc229cdcaa6df1fdebc185a1171bc698
- From:
- SEChudinov <s.chudinov@vkteam.ru>
- Via:
- Vladimir Davydov <vdavydov.dev@gmail.com>
- Date:
box: export box_slab_info via C API
NO_TEST=the new function is called in the test-covered function
@TarantoolBot document
Title: Document `box_slab_info` C API function
Since: Tarantool 3.3.0
Added the new C function `box_slab_info` that returns information about
the memory state depending on the passed argument `box_slab_info_type`.
The same information is available in Lua via `box.slab.info()`.
- Commit:
6fd4544740150d11a6120c8cf7ef7df949527dc9
- From:
- Nikolay Shirokovskiy <nshirokovskiy@tarantool.org>
- Via:
- Vladimir Davydov <vdavydov.dev@gmail.com>
- Date:
box: free txn limbo on exit
Part-of #10211
NO_TEST=internal
NO_CHANGELOG=internal
NO_DOC=internal
- Commit:
18e79a83874d1e94514f4eba3321718ba97fde9a
- From:
- Nikolay Shirokovskiy <nshirokovskiy@tarantool.org>
- Via:
- Vladimir Davydov <vdavydov.dev@gmail.com>
- Date:
box: free replication on exit
Part-of #10211
NO_TEST=internal
NO_CHANGELOG=internal
NO_DOC=internal