From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id D86912A38C for ; Mon, 1 Apr 2019 16:02:26 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HVgiL-4fEZ1y for ; Mon, 1 Apr 2019 16:02:26 -0400 (EDT) Received: from smtpng2.m.smailru.net (smtpng2.m.smailru.net [94.100.179.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 6A20C2A382 for ; Mon, 1 Apr 2019 16:02:26 -0400 (EDT) Subject: [tarantool-patches] Re: [PATCH v10 0/4] box.sql.execute removal From: Vladislav Shpilevoy References: Message-ID: <2d4269fa-aa32-6a22-8959-0a889b455fdb@tarantool.org> Date: Mon, 1 Apr 2019 23:02:23 +0300 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-Help: List-Unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-Subscribe: List-Owner: List-post: List-Archive: To: tarantool-patches@freelists.org Cc: kyukhin@tarantool.org, imeevma@tarantool.org LGTM. On 01/04/2019 22:59, Vladislav Shpilevoy wrote: > The patchset removes box.sql.execute and introduces box.execute as an > alternative. Box.execute results are exactly the same as netbox.execute ones. > > Changes in v10: > > - luaL_tofield now is 'truly' safe - added pcall wrap for __serialize > invocations; > > - Lua and box parts of execute.c/.h now in different files: > box/execute.h/.c and box/lua/execute.h/.c, thanks to Kirill S. > > V9: https://www.freelists.org/post/tarantool-patches/PATCH-v9-07-sql-remove-boxsqlexecute > Branch: http://github.com/tarantool/tarantool/tree/imeevma/gh-3505-no-sql-execute > Issue: https://github.com/tarantool/tarantool/issues/3505 > > Kirill Shcherbatov (1): > sql: export sql_bind structure and API > > Mergen Imeev (3): > iproto: create port_sql > sql: create box.execute() > sql: remove box.sql.execute() > > src/box/CMakeLists.txt | 3 +- > src/box/bind.c | 234 +++++ > src/box/bind.h | 144 +++ > src/box/execute.c | 494 ++++------- > src/box/execute.h | 84 +- > src/box/iproto.cc | 13 +- > src/box/lua/console.lua | 2 +- > src/box/lua/execute.c | 106 +++ > src/box/lua/init.c | 4 +- > src/box/lua/load_cfg.lua | 13 +- > src/box/lua/sql.c | 129 --- > src/box/lua/sql.h | 46 - > src/box/port.h | 1 - > test/box/cfg.result | 17 - > test/box/cfg.test.lua | 10 - > test/box/misc.result | 2 +- > test/box/sql-update-with-nested-select.result | 25 +- > .../sql-update-with-nested-select.test.lua | 14 +- > test/sql-tap/alter.test.lua | 8 +- > test/sql-tap/alter2.test.lua | 12 +- > test/sql-tap/analyze1.test.lua | 6 +- > test/sql-tap/analyze9.test.lua | 2 +- > test/sql-tap/autoinc.test.lua | 4 +- > test/sql-tap/between.test.lua | 2 +- > test/sql-tap/check.test.lua | 30 +- > test/sql-tap/delete1.test.lua | 4 +- > test/sql-tap/distinct.test.lua | 6 +- > test/sql-tap/fkey1.test.lua | 4 +- > test/sql-tap/fkey2.test.lua | 92 +- > test/sql-tap/fkey3.test.lua | 18 +- > test/sql-tap/fkey4.test.lua | 10 +- > test/sql-tap/func.test.lua | 12 +- > test/sql-tap/gh-2723-concurrency.test.lua | 36 +- > test/sql-tap/gh-2931-savepoints.test.lua | 6 +- > .../gh-3083-ephemeral-unref-tuples.test.lua | 4 +- > ...gh-3251-string-pattern-comparison.test.lua | 6 +- > .../gh-3307-xfer-optimization-issue.test.lua | 10 +- > .../gh-3332-tuple-format-leak.test.lua | 12 +- > .../gh-4077-iproto-execute-no-bind.test.lua | 4 +- > test/sql-tap/gh2140-trans.test.lua | 26 +- > .../gh2250-trigger-chain-limit.test.lua | 21 +- > test/sql-tap/gh2259-in-stmt-trans.test.lua | 42 +- > .../gh2548-select-compound-limit.test.lua | 14 +- > test/sql-tap/gh2964-abort.test.lua | 2 +- > test/sql-tap/index1.test.lua | 2 +- > test/sql-tap/intpkey.test.lua | 2 +- > test/sql-tap/limit.test.lua | 12 +- > test/sql-tap/lua/sqltester.lua | 38 +- > test/sql-tap/misc1.test.lua | 2 +- > test/sql-tap/orderby9.test.lua | 5 + > test/sql-tap/pragma.test.lua | 8 +- > test/sql-tap/select1.test.lua | 20 +- > test/sql-tap/select9.test.lua | 5 +- > test/sql-tap/selectB.test.lua | 4 +- > test/sql-tap/table.test.lua | 20 +- > test/sql-tap/tkt-4a03edc4c8.test.lua | 2 +- > test/sql-tap/trigger1.test.lua | 8 +- > test/sql-tap/triggerC.test.lua | 14 +- > test/sql-tap/unique.test.lua | 10 +- > test/sql/check-clear-ephemeral.result | 22 +- > test/sql/check-clear-ephemeral.test.lua | 12 +- > test/sql/checks.result | 9 +- > test/sql/checks.test.lua | 8 +- > test/sql/clear.result | 49 +- > test/sql/clear.test.lua | 20 +- > test/sql/collation.result | 817 +++++++++++++----- > test/sql/collation.test.lua | 350 ++++---- > test/sql/delete-multiple-idx.result | 44 +- > test/sql/delete-multiple-idx.test.lua | 24 +- > test/sql/delete.result | 127 ++- > test/sql/delete.test.lua | 70 +- > test/sql/drop-index.result | 35 +- > test/sql/drop-index.test.lua | 24 +- > test/sql/drop-table.result | 44 +- > test/sql/drop-table.test.lua | 32 +- > test/sql/engine.result | 24 +- > test/sql/engine.test.lua | 16 +- > test/sql/errinj.result | 158 ++-- > test/sql/errinj.test.lua | 88 +- > test/sql/foreign-keys.result | 58 +- > test/sql/foreign-keys.test.lua | 40 +- > test/sql/func-recreate.result | 11 +- > test/sql/func-recreate.test.lua | 4 +- > test/sql/gh-2347-max-int-literals.result | 23 +- > test/sql/gh-2347-max-int-literals.test.lua | 10 +- > test/sql/gh-2362-select-access-rights.result | 33 +- > .../sql/gh-2362-select-access-rights.test.lua | 22 +- > test/sql/gh-2929-primary-key.result | 19 +- > test/sql/gh-2929-primary-key.test.lua | 16 +- > test/sql/gh-2981-check-autoinc.result | 49 +- > test/sql/gh-2981-check-autoinc.test.lua | 30 +- > test/sql/gh-3199-no-mem-leaks.result | 188 +++- > test/sql/gh-3199-no-mem-leaks.test.lua | 40 +- > test/sql/gh-3613-idx-alter-update-2.result | 18 +- > test/sql/gh-3613-idx-alter-update-2.test.lua | 12 +- > test/sql/gh-3613-idx-alter-update.result | 26 +- > test/sql/gh-3613-idx-alter-update.test.lua | 18 +- > test/sql/gh-3888-values-blob-assert.result | 47 +- > test/sql/gh-3888-values-blob-assert.test.lua | 22 +- > .../gh2141-delete-trigger-drop-table.result | 46 +- > .../gh2141-delete-trigger-drop-table.test.lua | 22 +- > test/sql/gh2251-multiple-update.result | 49 +- > test/sql/gh2251-multiple-update.test.lua | 26 +- > .../gh2483-remote-persistency-check.result | 24 +- > .../gh2483-remote-persistency-check.test.lua | 12 +- > ...808-inline-unique-persistency-check.result | 37 +- > ...8-inline-unique-persistency-check.test.lua | 14 +- > test/sql/icu-upper-lower.result | 161 +++- > test/sql/icu-upper-lower.test.lua | 10 +- > test/sql/insert-unique.result | 30 +- > test/sql/insert-unique.test.lua | 18 +- > test/sql/integer-overflow.result | 26 +- > test/sql/integer-overflow.test.lua | 24 +- > test/sql/iproto.result | 48 +- > test/sql/iproto.test.lua | 26 +- > test/sql/max-on-index.result | 62 +- > test/sql/max-on-index.test.lua | 32 +- > test/sql/message-func-indexes.result | 29 +- > test/sql/message-func-indexes.test.lua | 22 +- > test/sql/min-on-index.result | 59 -- > test/sql/misc.result | 23 +- > test/sql/misc.test.lua | 16 +- > test/sql/no-pk-space.result | 19 +- > test/sql/no-pk-space.test.lua | 16 +- > test/sql/on-conflict.result | 130 ++- > test/sql/on-conflict.test.lua | 70 +- > test/sql/persistency.result | 425 ++++++--- > test/sql/persistency.test.lua | 102 +-- > test/sql/row-count.result | 288 ++++-- > test/sql/row-count.test.lua | 112 +-- > test/sql/savepoints.result | 31 +- > test/sql/savepoints.test.lua | 28 +- > test/sql/select-null.result | 31 +- > test/sql/select-null.test.lua | 14 +- > test/sql/sql-debug.result | 26 +- > test/sql/sql-debug.test.lua | 10 +- > test/sql/sql-statN-index-drop.result | 197 ++++- > test/sql/sql-statN-index-drop.test.lua | 58 +- > test/sql/tokenizer.result | 3 +- > test/sql/tokenizer.test.lua | 2 +- > test/sql/transition.result | 387 +++++++-- > test/sql/transition.test.lua | 88 +- > test/sql/transitive-transactions.result | 48 +- > test/sql/transitive-transactions.test.lua | 42 +- > test/sql/triggers.result | 239 +++-- > test/sql/triggers.test.lua | 140 +-- > test/sql/types.result | 104 ++- > test/sql/types.test.lua | 66 +- > test/sql/update-with-nested-select.result | 28 +- > test/sql/update-with-nested-select.test.lua | 16 +- > test/sql/upgrade.result | 40 +- > test/sql/upgrade.test.lua | 20 +- > test/sql/view.result | 131 ++- > test/sql/view.test.lua | 94 +- > test/sql/view_delayed_wal.result | 14 +- > test/sql/view_delayed_wal.test.lua | 10 +- > test/sql/vinyl-opts.result | 9 +- > test/sql/vinyl-opts.test.lua | 6 +- > 158 files changed, 5160 insertions(+), 3245 deletions(-) > create mode 100644 src/box/bind.c > create mode 100644 src/box/bind.h > create mode 100644 src/box/lua/execute.c > delete mode 100644 src/box/lua/sql.c > delete mode 100644 src/box/lua/sql.h > delete mode 100644 test/sql/min-on-index.result > > -- > 2.17.2 (Apple Git-113) > >