Tarantool development patches archive
 help / color / mirror / Atom feed
From: Kirill Shcherbatov <kshcherbatov@tarantool.org>
To: tarantool-patches@freelists.org
Cc: v.shpilevoy@tarantool.org,
	Kirill Shcherbatov <kshcherbatov@tarantool.org>
Subject: [tarantool-patches] [PATCH v1 0/2] sql: default engine pragma
Date: Wed, 20 Jun 2018 20:06:25 +0300	[thread overview]
Message-ID: <cover.1529513981.git.kshcherbatov@tarantool.org> (raw)

Introduced a new SQL pragma that allows to set default storage engine.
Both 'memtx' and 'vinyl' are supported. Config enum value is stored in user_session
represented as uint8_t. Initial 0 value match default MEMTEX storage engine.
Adopted basic sql test to launch with multiple engines. 
Worth to take into account that vinyl transactions don't rollback automatically 
on failures. This required to modify some tests.

Branch: http://github.com/tarantool/tarantool/tree/kshch/gh-2199-engine-sql-specifier
Issue: https://github.com/tarantool/tarantool/issues/2199

Kirill Shcherbatov (2):
  sql: introduce pragma sql_default_engine
  sql: enable multi-engine tests for SQL

 src/box/session.cc                                 |  1 +
 src/box/session.h                                  |  2 +
 src/box/sql/build.c                                | 43 +++++++++++++++++++++-
 src/box/sql/pragma.c                               |  8 ++++
 src/box/sql/pragma.h                               |  6 +++
 src/box/sql/sqliteInt.h                            | 14 +++++++
 test/sql-tap/gh-2367-pragma.test.lua               | 14 ++++++-
 test/sql/check-clear-ephemeral.result              |  6 +++
 test/sql/check-clear-ephemeral.test.lua            |  3 +-
 test/sql/checks.result                             |  6 +++
 test/sql/checks.test.lua                           |  2 +
 test/sql/clear.result                              |  6 +++
 test/sql/clear.test.lua                            |  2 +
 test/sql/collation.result                          |  9 +++++
 test/sql/collation.test.lua                        |  3 ++
 test/sql/delete-multiple-idx.result                |  6 +++
 test/sql/delete-multiple-idx.test.lua              |  2 +
 test/sql/delete.result                             |  6 +++
 test/sql/delete.test.lua                           |  2 +
 test/sql/drop-index.result                         |  6 +++
 test/sql/drop-index.test.lua                       |  2 +
 test/sql/drop-table.result                         |  6 +++
 test/sql/drop-table.test.lua                       |  2 +
 test/sql/engine.cfg                                |  6 +++
 test/sql/engine.result                             | 42 +++++++++++++++++++++
 test/sql/engine.test.lua                           | 17 +++++++++
 test/sql/errinj.result                             |  9 +++++
 test/sql/errinj.test.lua                           |  3 ++
 test/sql/gh-2929-primary-key.result                |  9 +++++
 test/sql/gh-2929-primary-key.test.lua              |  4 ++
 test/sql/gh-2981-check-autoinc.result              |  9 +++++
 test/sql/gh-2981-check-autoinc.test.lua            |  4 ++
 test/sql/gh-3199-no-mem-leaks.result               |  6 +++
 test/sql/gh-3199-no-mem-leaks.test.lua             |  2 +
 test/sql/gh2141-delete-trigger-drop-table.result   |  6 +++
 test/sql/gh2141-delete-trigger-drop-table.test.lua |  2 +
 test/sql/gh2251-multiple-update.result             |  6 +++
 test/sql/gh2251-multiple-update.test.lua           |  2 +
 test/sql/gh2483-remote-persistency-check.result    |  6 +++
 test/sql/gh2483-remote-persistency-check.test.lua  |  2 +
 .../gh2808-inline-unique-persistency-check.result  |  6 +++
 ...gh2808-inline-unique-persistency-check.test.lua |  2 +
 test/sql/icu-upper-lower.result                    |  6 +++
 test/sql/icu-upper-lower.test.lua                  |  2 +
 test/sql/insert-unique.result                      |  6 +++
 test/sql/insert-unique.test.lua                    |  2 +
 test/sql/iproto.result                             | 12 +++++-
 test/sql/iproto.test.lua                           |  6 ++-
 test/sql/max-on-index.result                       |  6 +++
 test/sql/max-on-index.test.lua                     |  2 +
 test/sql/message-func-indexes.result               |  6 +++
 test/sql/message-func-indexes.test.lua             |  2 +
 test/sql/misc.result                               |  9 +++++
 test/sql/misc.test.lua                             |  4 ++
 test/sql/on-conflict.result                        |  6 +++
 test/sql/on-conflict.test.lua                      |  2 +
 test/sql/persistency.result                        |  6 +++
 test/sql/persistency.test.lua                      |  2 +
 test/sql/savepoints.result                         |  6 +++
 test/sql/savepoints.test.lua                       |  2 +
 test/sql/select-null.result                        |  6 +++
 test/sql/select-null.test.lua                      |  2 +
 test/sql/sql-statN-index-drop.result               |  6 +++
 test/sql/sql-statN-index-drop.test.lua             |  2 +
 test/sql/suite.ini                                 |  1 +
 test/sql/tokenizer.result                          |  6 +++
 test/sql/tokenizer.test.lua                        |  2 +
 test/sql/transition.result                         |  9 +++++
 test/sql/transition.test.lua                       |  4 ++
 test/sql/transitive-transactions.result            | 10 +++++
 test/sql/transitive-transactions.test.lua          |  6 +++
 test/sql/triggers.result                           |  6 +++
 test/sql/triggers.test.lua                         |  2 +
 test/sql/update-with-nested-select.result          |  6 +++
 test/sql/update-with-nested-select.test.lua        |  2 +
 test/sql/upgrade.result                            |  6 +++
 test/sql/upgrade.test.lua                          |  2 +
 test/sql/view.result                               |  6 +++
 test/sql/view.test.lua                             |  2 +
 test/sql/view_delayed_wal.result                   |  6 +++
 test/sql/view_delayed_wal.test.lua                 |  2 +
 81 files changed, 476 insertions(+), 5 deletions(-)
 create mode 100644 test/sql/engine.cfg
 create mode 100644 test/sql/engine.result
 create mode 100644 test/sql/engine.test.lua

-- 
2.7.4

             reply	other threads:[~2018-06-20 17:06 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-20 17:06 Kirill Shcherbatov [this message]
2018-06-20 17:06 ` [tarantool-patches] [PATCH v1 1/2] sql: introduce pragma sql_default_engine Kirill Shcherbatov
2018-06-22 20:04   ` [tarantool-patches] " Vladislav Shpilevoy
2018-06-26 12:22     ` Kirill Shcherbatov
2018-06-26 13:34       ` Vladislav Shpilevoy
2018-06-26 17:09         ` Kirill Shcherbatov
2018-06-27 12:32           ` Vladislav Shpilevoy
2018-06-27 15:59             ` Kirill Shcherbatov
2018-06-20 17:06 ` [tarantool-patches] [PATCH v1 2/2] sql: enable multi-engine tests for SQL Kirill Shcherbatov
2018-06-22 20:04   ` [tarantool-patches] " Vladislav Shpilevoy
2018-06-26 12:22     ` Kirill Shcherbatov
2018-06-26 13:34       ` Vladislav Shpilevoy
2018-06-26 17:09         ` Kirill Shcherbatov
2018-06-26 12:23 ` [tarantool-patches] [PATCH v1 2/3] sql: fix SQL Count for vinyl engine Kirill Shcherbatov
2018-06-28 15:35 ` [tarantool-patches] Re: [PATCH v1 0/2] sql: default engine pragma Vladislav Shpilevoy
2018-06-28 16:00   ` n.pettik

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.1529513981.git.kshcherbatov@tarantool.org \
    --to=kshcherbatov@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --cc=v.shpilevoy@tarantool.org \
    --subject='Re: [tarantool-patches] [PATCH v1 0/2] sql: default engine pragma' \
    /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