box: panic if snapshot has no system spaces during recovery
Currently, if a snapshot contains some correct entries, but doesn't include system spaces, Tarantool crashes with segmentation fault, or for Debug build: void diag_raise(): Assertion `e != NULL' failed. This happens because memtx_engine_recover_snapshot returns -1, while diag is not set. Let's panic instead of a crash. Closes #7800 NO_DOC=bugfix
Showing
- changelogs/unreleased/gh-7800-recover-snap-without-spaces.md 4 additions, 0 deletionschangelogs/unreleased/gh-7800-recover-snap-without-spaces.md
- src/box/memtx_engine.cc 8 additions, 1 deletionsrc/box/memtx_engine.cc
- test/box-luatest/gh_7800_data/00000000000000000000.snap 0 additions, 0 deletionstest/box-luatest/gh_7800_data/00000000000000000000.snap
- test/box-luatest/gh_7800_recover_snap_without_spaces_test.lua 23 additions, 0 deletions.../box-luatest/gh_7800_recover_snap_without_spaces_test.lua
Loading