From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Alexander Turenko Subject: [PATCH v2 0/6] Merger Date: Wed, 9 Jan 2019 23:20:08 +0300 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To: Vladimir Davydov Cc: Alexander Turenko , tarantool-patches@freelists.org List-ID: There was made many changes since the previous iteration. Consider the email in the mailing thread re the first version, where I answer to the review comments. In short (non-exhaustive list of changes): * move to box/; * renames structures; * change API: merger.pairs(ctx, ...); * remove decode/encode, added net.box/msgpack helpers; * removed say_debug() debug prints; * replaced switched around different sources with virtual functions; * deduplicated the code was copied from lbox_tuple_new(); * moved key_def creation to box/lua/key_def.[ch]; https://github.com/tarantool/tarantool/issues/3276 https://github.com/tarantool/tarantool/tree/Totktonada/gh-3276-on-board-merger Alexander Turenko (6): Add luaL_iscallable with support of cdata metatype Add functions to ease using Lua iterators from C lua: add luaT_newtuple() lua: add luaT_new_key_def() net.box: add helpers to decode msgpack headers Add merger for tuple streams extra/exports | 2 + src/CMakeLists.txt | 1 + src/box/CMakeLists.txt | 2 + src/box/lua/init.c | 3 + src/box/lua/key_def.c | 217 +++++ src/box/lua/key_def.h | 61 ++ src/box/lua/merger.c | 1402 ++++++++++++++++++++++++++++++ src/box/lua/merger.h | 47 + src/box/lua/net_box.c | 49 ++ src/box/lua/net_box.lua | 1 + src/box/lua/tuple.c | 91 +- src/box/lua/tuple.h | 15 + src/lua/msgpack.c | 66 ++ src/lua/utils.c | 109 +++ src/lua/utils.h | 38 + test/app-tap/module_api.c | 23 + test/app-tap/module_api.test.lua | 172 +++- test/app-tap/msgpack.test.lua | 157 +++- test/box-tap/merger.test.lua | 558 ++++++++++++ test/box-tap/suite.ini | 1 + test/box/net.box.result | 58 ++ test/box/net.box.test.lua | 26 + 22 files changed, 3072 insertions(+), 27 deletions(-) create mode 100644 src/box/lua/key_def.c create mode 100644 src/box/lua/key_def.h create mode 100644 src/box/lua/merger.c create mode 100644 src/box/lua/merger.h create mode 100755 test/box-tap/merger.test.lua -- 2.20.1