[Tarantool-patches] [PATCH 1.10 00/16] RFC: module api: extend for external key_def Lua module
Alexander Turenko
alexander.turenko at tarantool.org
Wed Sep 23 04:40:13 MSK 2020
The backport of the patchset to 1.10. I decided to send it to ease
commenting (despite that there is many repeating code).
The status is the same as for the master patchset: it looks ready except
tests. I'll write them.
See the cover letter for the master patchset for details ([1]). My
doubts around the backport are also in the master cover letter.
Issues:
https://github.com/tarantool/tarantool/issues/5313 ('module api: module
API requires C11')
https://github.com/tarantool/tarantool/issues/5273 ('module api: expose
everything that is needed for external key_def module')
Branch:
https://github.com/tarantool/tarantool/tree/Totktonada/gh-5273-expand-module-api-1.10
[1]: https://lists.tarantool.org/pipermail/tarantool-patches/2020-September/019583.html
Alexander Turenko (16):
collation: allow to find a collation by a name
refactoring: adjust contract of luaT_tuple_new()
module api: get rid of typedef redefinitions
WIP: module api: expose box region
WIP: module api/lua: add luaL_iscdata() function
WIP: module api/lua: expose luaT_tuple_new()
WIP: module api/lua: add luaT_tuple_encode()
WIP: refactoring: add API_EXPORT to lua/tuple functions
WIP: refactoring: add API_EXPORT to key_def functions
WIP: refactoring: extract key_def module API functions
WIP: module api: add box_key_def_new_ex()
WIP: module api: add box_key_def_dump_parts()
WIP: module api: expose box_tuple_validate_key_parts()
WIP: module api: expose box_key_def_merge()
WIP: module api: expose box_tuple_extract_key_ex()
WIP: module api: add box_key_def_validate_key()
extra/exports | 14 ++
src/CMakeLists.txt | 6 +-
src/box/CMakeLists.txt | 1 +
src/box/coll_id_cache.c | 50 +++++-
src/box/coll_id_cache.h | 6 +
src/box/index.h | 5 +-
src/box/key_def.c | 53 +-----
src/box/key_def.h | 85 ++++-----
src/box/key_def_api.c | 298 ++++++++++++++++++++++++++++++++
src/box/key_def_api.h | 274 +++++++++++++++++++++++++++++
src/box/lua/space.cc | 2 +-
src/box/lua/tuple.c | 62 +++++--
src/box/lua/tuple.h | 65 ++++++-
src/fiber.c | 24 +++
src/fiber.h | 101 +++++++++++
src/lua/utils.c | 6 +
src/lua/utils.h | 20 +++
test/app-tap/CMakeLists.txt | 6 +
test/app-tap/module_api.c | 2 +
test/unit/CMakeLists.txt | 4 +
test/unit/luaT_tuple_new.c | 175 +++++++++++++++++++
test/unit/luaT_tuple_new.result | 22 +++
test/unit/vy_iterators_helper.c | 1 +
test/unit/vy_mem.c | 1 +
test/unit/vy_point_lookup.c | 1 +
test/unit/vy_write_iterator.c | 1 +
26 files changed, 1151 insertions(+), 134 deletions(-)
create mode 100644 src/box/key_def_api.c
create mode 100644 src/box/key_def_api.h
create mode 100644 test/unit/luaT_tuple_new.c
create mode 100644 test/unit/luaT_tuple_new.result
--
2.25.0
More information about the Tarantool-patches
mailing list