From: imeevma@tarantool.org To: v.shpilevoy@tarantool.org Cc: tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH v3 0/5] Replace control pragmas by SET Date: Thu, 7 Nov 2019 13:36:17 +0300 [thread overview] Message-ID: <cover.1573121685.git.imeevma@gmail.com> (raw) The main goal of this set of patches is to replace control pragmas with the SET operator. Control pragmas are those that change SQL settings. Along with this, we will allow to see SQL session-local settings in unified way. https://github.com/tarantool/tarantool/issues/4511 https://github.com/tarantool/tarantool/tree/imeevma/gh-4511-pragma-replaced-by-set Changes in v2: 1) Sysview _vsql_settings was changed to _session_settings. 2) Code refactoring. 3) Fixed comments and descriptions. 4) Fixed showed in review bugs. Changes in v3: 1) SQL settings divided into session and global. 2) Patch 2, 3 and 5 were refactored due to removal of sql_compound_select_limit from the session options. Mergen Imeev (5): sysview: make get() and create_iterator() methods virtual box: introdice _vsession_settings sysview sql: introduce SET statement temporary: disable boolean.test.sql sql: replace control pragmas src/box/bootstrap.snap | Bin 5944 -> 5982 bytes src/box/lua/space.cc | 2 + src/box/lua/upgrade.lua | 23 ++ src/box/schema_def.h | 2 + src/box/session.cc | 131 +++++++++++ src/box/session.h | 13 ++ src/box/sql.c | 3 +- src/box/sql.h | 36 +++ src/box/sql/build.c | 245 +++++++++++++++++++++ src/box/sql/delete.c | 26 --- src/box/sql/insert.c | 35 +-- src/box/sql/parse.y | 8 +- src/box/sql/pragma.c | 203 +---------------- src/box/sql/pragma.h | 150 ------------- src/box/sql/select.c | 16 +- src/box/sql/sqlInt.h | 16 +- src/box/sql/update.c | 26 --- src/box/sql/vdbe.c | 26 +-- src/box/sysview.c | 48 +++- test/app-tap/tarantoolctl.test.lua | 4 +- test/box-py/bootstrap.result | 5 +- test/box/access_sysview.result | 124 ++++++++++- test/box/access_sysview.test.lua | 54 +++++ test/box/alter.result | 5 +- test/sql-tap/analyze4.test.lua | 4 +- test/sql-tap/autoinc.test.lua | 2 +- test/sql-tap/colname.test.lua | 37 +--- test/sql-tap/fkey2.test.lua | 4 +- test/sql-tap/gh2548-select-compound-limit.test.lua | 16 +- test/sql-tap/lua/sqltester.lua | 2 +- test/sql-tap/misc1.test.lua | 2 +- test/sql-tap/pragma.test.lua | 135 +----------- test/sql-tap/select1.test.lua | 35 ++- test/sql-tap/tkt3731.test.lua | 2 +- test/sql-tap/trigger2.test.lua | 2 +- test/sql-tap/triggerC.test.lua | 51 +---- test/sql-tap/update.test.lua | 17 +- test/sql-tap/whereA.test.lua | 24 +- test/sql/check-clear-ephemeral.result | 4 +- test/sql/check-clear-ephemeral.test.lua | 4 +- test/sql/checks.result | 4 +- test/sql/checks.test.lua | 4 +- test/sql/clear.result | 4 +- test/sql/clear.test.lua | 4 +- test/sql/collation.result | 2 +- test/sql/collation.test.lua | 2 +- test/sql/ddl.result | 2 +- test/sql/ddl.test.lua | 2 +- test/sql/delete-multiple-idx.result | 4 +- test/sql/delete-multiple-idx.test.lua | 4 +- test/sql/delete.result | 4 +- test/sql/delete.test.lua | 4 +- test/sql/drop-index.result | 4 +- test/sql/drop-index.test.lua | 4 +- test/sql/drop-table.result | 4 +- test/sql/drop-table.test.lua | 4 +- test/sql/engine.result | 6 +- test/sql/engine.test.lua | 6 +- test/sql/errinj.result | 2 +- test/sql/errinj.test.lua | 2 +- test/sql/func-recreate.result | 2 +- test/sql/func-recreate.test.lua | 2 +- test/sql/gh-2362-select-access-rights.result | 2 +- test/sql/gh-2362-select-access-rights.test.lua | 2 +- test/sql/gh-2929-primary-key.result | 2 +- test/sql/gh-2929-primary-key.test.lua | 2 +- test/sql/gh-2981-check-autoinc.result | 2 +- test/sql/gh-2981-check-autoinc.test.lua | 2 +- test/sql/gh-3199-no-mem-leaks.result | 2 +- test/sql/gh-3199-no-mem-leaks.test.lua | 2 +- test/sql/gh-3613-idx-alter-update-2.result | 2 +- test/sql/gh-3613-idx-alter-update-2.test.lua | 2 +- test/sql/gh-3613-idx-alter-update.result | 2 +- test/sql/gh-3613-idx-alter-update.test.lua | 2 +- test/sql/gh-3888-values-blob-assert.result | 2 +- test/sql/gh-3888-values-blob-assert.test.lua | 2 +- test/sql/gh2141-delete-trigger-drop-table.result | 2 +- test/sql/gh2141-delete-trigger-drop-table.test.lua | 2 +- test/sql/gh2251-multiple-update.result | 2 +- test/sql/gh2251-multiple-update.test.lua | 2 +- test/sql/gh2483-remote-persistency-check.result | 2 +- test/sql/gh2483-remote-persistency-check.test.lua | 2 +- .../gh2808-inline-unique-persistency-check.result | 2 +- ...gh2808-inline-unique-persistency-check.test.lua | 2 +- test/sql/icu-upper-lower.result | 2 +- test/sql/icu-upper-lower.test.lua | 2 +- test/sql/insert-unique.result | 4 +- test/sql/insert-unique.test.lua | 4 +- test/sql/integer-overflow.result | 2 +- test/sql/integer-overflow.test.lua | 2 +- test/sql/iproto.result | 33 +-- test/sql/iproto.test.lua | 10 +- test/sql/max-on-index.result | 4 +- test/sql/max-on-index.test.lua | 4 +- test/sql/message-func-indexes.result | 2 +- test/sql/message-func-indexes.test.lua | 2 +- test/sql/misc.result | 2 +- test/sql/misc.test.lua | 2 +- test/sql/no-pk-space.result | 2 +- test/sql/no-pk-space.test.lua | 2 +- test/sql/on-conflict.result | 2 +- test/sql/on-conflict.test.lua | 2 +- test/sql/persistency.result | 2 +- test/sql/persistency.test.lua | 2 +- test/sql/row-count.result | 10 +- test/sql/row-count.test.lua | 4 +- test/sql/savepoints.result | 2 +- test/sql/savepoints.test.lua | 2 +- test/sql/select-null.result | 4 +- test/sql/select-null.test.lua | 4 +- test/sql/sql-debug.result | 144 +++++++++--- test/sql/sql-debug.test.lua | 33 ++- test/sql/sql-statN-index-drop.result | 2 +- test/sql/sql-statN-index-drop.test.lua | 2 +- test/sql/suite.ini | 2 +- test/sql/tokenizer.result | 2 +- test/sql/tokenizer.test.lua | 2 +- test/sql/transition.result | 2 +- test/sql/transition.test.lua | 2 +- test/sql/transitive-transactions.result | 8 +- test/sql/transitive-transactions.test.lua | 8 +- test/sql/triggers.result | 14 +- test/sql/triggers.test.lua | 14 +- test/sql/update-with-nested-select.result | 4 +- test/sql/update-with-nested-select.test.lua | 4 +- test/sql/upgrade.result | 2 +- test/sql/upgrade.test.lua | 2 +- test/sql/view.result | 2 +- test/sql/view.test.lua | 2 +- test/sql/view_delayed_wal.result | 2 +- test/sql/view_delayed_wal.test.lua | 2 +- test/sql/vinyl-opts.result | 2 +- test/sql/vinyl-opts.test.lua | 2 +- test/wal_off/alter.result | 2 +- 134 files changed, 1044 insertions(+), 992 deletions(-) -- 2.7.4
next reply other threads:[~2019-11-07 10:36 UTC|newest] Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-11-07 10:36 imeevma [this message] 2019-11-07 10:36 ` [Tarantool-patches] [PATCH v3 1/5] sysview: make get() and create_iterator() methods virtual imeevma 2019-11-07 10:36 ` [Tarantool-patches] [PATCH v3 2/5] box: introdice _vsession_settings sysview imeevma 2019-11-07 10:36 ` [Tarantool-patches] [PATCH v3 3/5] sql: introduce SET statement imeevma 2019-11-07 12:40 ` Vladislav Shpilevoy 2019-11-07 14:12 ` Mergen Imeev 2019-11-11 21:56 ` Vladislav Shpilevoy 2019-11-15 14:06 ` Mergen Imeev 2019-11-17 17:26 ` Vladislav Shpilevoy 2019-11-17 20:32 ` Vladislav Shpilevoy 2019-11-27 10:33 ` Mergen Imeev 2019-11-27 23:03 ` Vladislav Shpilevoy 2019-11-27 23:07 ` Vladislav Shpilevoy 2019-11-27 23:09 ` Vladislav Shpilevoy 2019-11-28 8:59 ` Mergen Imeev 2019-11-28 8:56 ` Mergen Imeev 2019-11-07 10:36 ` [Tarantool-patches] [PATCH v3 4/5] temporary: disable boolean.test.sql imeevma 2019-11-07 10:37 ` [Tarantool-patches] [PATCH v3 5/5] sql: replace control pragmas imeevma 2019-12-06 11:37 ` [Tarantool-patches] [PATCH v3 0/5] Replace control pragmas by SET Kirill Yukhin 2019-12-06 13:50 ` Mergen Imeev 2019-12-06 14:06 ` Sergey Ostanevich 2019-12-17 22:11 ` Alexander Turenko 2019-12-18 2:39 ` Peter Gulutzan 2019-12-18 17:39 ` Peter Gulutzan 2019-12-19 9:59 ` Mergen Imeev 2019-12-19 17:35 ` Peter Gulutzan 2019-12-19 17:51 ` Mergen Imeev 2019-12-19 21:09 ` Vladislav Shpilevoy 2019-12-18 10:20 ` Kirill Yukhin 2019-12-18 10:53 ` Alexander Turenko
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover.1573121685.git.imeevma@gmail.com \ --to=imeevma@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH v3 0/5] Replace control pragmas by SET' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox