[tarantool-patches] [PATCH v1 0/4] sql: remove Triggers to server
Kirill Shcherbatov
kshcherbatov at tarantool.org
Thu May 31 14:22:49 MSK 2018
Branch: http://github.com/tarantool/tarantool/tree/kshch/gh-3273-no-sql-triggers
Issue: https://github.com/tarantool/tarantool/issues/3273
As we are going to call parser on box.cfg() to recreate triggers
from SQL, we should initialize Schema as it used in sqlite3BeginTrigger.
Inroduced box_space_id_by_name to get object id by name from custom space.
Fixed bug in tarantoolSqlite3RenameTrigger: sql request have had invalid
length in MsgPack after ALTER TABLE NAME.
Introduced sql_triggers field in space structure.
Changed parser logic to do not insert builded triggers, just only
to do parsing. All triggers insertions and deletions are operated
via on_replace_dd_trigger now.
Kirill Shcherbatov (4):
box: move db->pShchema init to sql_init
sql: fix sql len in tarantoolSqlite3RenameTrigger
box: introduce box_space_id_by_name
sql: move Triggers to server
src/box/alter.cc | 57 +++++++++++
src/box/box.cc | 10 +-
src/box/box.h | 14 +++
src/box/space.h | 2 +
src/box/sql.c | 60 ++++-------
src/box/sql.h | 62 ++++++++++++
src/box/sql/build.c | 8 +-
src/box/sql/insert.c | 6 +-
src/box/sql/sqliteInt.h | 2 -
src/box/sql/tokenize.c | 43 +++++++-
src/box/sql/trigger.c | 258 ++++++++++++++++++++++++++++--------------------
src/box/sql/vdbe.c | 58 +++--------
src/box/sql/vdbe.h | 1 -
src/box/sql/vdbeaux.c | 9 --
14 files changed, 374 insertions(+), 216 deletions(-)
--
2.7.4
More information about the Tarantool-patches
mailing list