box: move index_opts::hint check from Lua to space_check_index_def
The checks in box.schema.index.create() and box.schema.index.alter() were case sensitive, also it was possible to insert incorrect index options directly into `box.space._index`. Fixed by adding checks to memtx_space_check_index_def() and vinyl_space_check_index_def(). Closes #8937 NO_DOC=bugfix (cherry picked from commit 4e25384b)
Showing
- changelogs/unreleased/gh-8937-memtx-tree-index-doesnt-accept-true-option-for-hint.md 4 additions, 0 deletions...37-memtx-tree-index-doesnt-accept-true-option-for-hint.md
- src/box/alter.cc 11 additions, 0 deletionssrc/box/alter.cc
- src/box/index_def.c 23 additions, 2 deletionssrc/box/index_def.c
- src/box/index_def.h 8 additions, 1 deletionsrc/box/index_def.h
- src/box/lua/schema.lua 0 additions, 11 deletionssrc/box/lua/schema.lua
- src/box/lua/space.cc 1 addition, 1 deletionsrc/box/lua/space.cc
- src/box/memtx_space.c 13 additions, 0 deletionssrc/box/memtx_space.c
- src/box/memtx_tree.cc 1 addition, 1 deletionsrc/box/memtx_tree.cc
- src/box/vinyl.c 11 additions, 0 deletionssrc/box/vinyl.c
- test/box-luatest/gh_8937_data/00000000000000000004.snap 0 additions, 0 deletionstest/box-luatest/gh_8937_data/00000000000000000004.snap
- test/box-luatest/gh_8937_data/00000000000000000004.vylog 0 additions, 0 deletionstest/box-luatest/gh_8937_data/00000000000000000004.vylog
- test/box-luatest/gh_8937_data/gen.lua 14 additions, 0 deletionstest/box-luatest/gh_8937_data/gen.lua
- test/box-luatest/gh_8937_recover_wrong_hint_options_test.lua 22 additions, 0 deletionstest/box-luatest/gh_8937_recover_wrong_hint_options_test.lua
- test/box/tree_pk.result 86 additions, 8 deletionstest/box/tree_pk.result
- test/box/tree_pk.test.lua 26 additions, 5 deletionstest/box/tree_pk.test.lua
Loading
Please register or sign in to comment