[tarantool-patches] [PATCH 0/7] Finish SQL DD integration
Nikita Pettik
korablev at tarantool.org
Fri Aug 24 01:55:46 MSK 2018
Branch: https://github.com/tarantool/tarantool/tree/np/gh-3561-finish-DD-integration
Issue:
https://github.com/tarantool/tarantool/issues/3561
https://github.com/tarantool/tarantool/issues/2217
Current patch-set is last in series and finishes SQL DD integration.
In second patch we get rid of SQLite struct index. Instead, we move
struct space to struct Table and maintain array of surrogate indexes,
which in turn basically contain only index_def's. Also, it allowed
to use indef_def throughout query planner.
Fifth patch substitutes lookups in table hash with lookups in space
hash and wrapping that space in struct Table in order to avoid enormous
code refactoring.
Finally, in the last patch a lot of SQLite specific routines have
been removed: callback function invoked during OP_ParseSchema and
opcode itself; OP_DropIndex and OP_DropTable; struct Schema and
so forth.
Nikita Pettik (7):
sql: remove struct schema from struct Table
sql: remove SQLite original struct Index
sql: remove struct Table from analyze routine
sql: refactor ALTER RENAME code generation
sql: remove lookups in Table hash
sql: don't add system spaces to Table hash
sql: finish DD integration
src/box/alter.cc | 15 +-
src/box/sql.c | 193 ++-----
src/box/sql.h | 3 +-
src/box/sql/alter.c | 114 ++--
src/box/sql/analyze.c | 233 ++++----
src/box/sql/build.c | 918 +++++++------------------------
src/box/sql/callback.c | 42 --
src/box/sql/delete.c | 96 ++--
src/box/sql/expr.c | 123 +----
src/box/sql/fkey.c | 15 +-
src/box/sql/insert.c | 134 ++---
src/box/sql/main.c | 1 -
src/box/sql/parse.y | 10 +-
src/box/sql/pragma.c | 355 ++++++------
src/box/sql/prepare.c | 131 -----
src/box/sql/select.c | 58 +-
src/box/sql/sqliteInt.h | 151 ++---
src/box/sql/status.c | 16 -
src/box/sql/tarantoolInt.h | 54 +-
src/box/sql/trigger.c | 15 +-
src/box/sql/update.c | 13 +-
src/box/sql/vdbe.c | 100 ----
src/box/sql/vdbe.h | 7 +-
src/box/sql/vdbeaux.c | 12 +-
src/box/sql/vdbemem.c | 28 +-
src/box/sql/where.c | 381 ++++++-------
src/box/sql/whereInt.h | 8 +-
src/box/sql/wherecode.c | 167 +++---
test/sql-tap/alter.test.lua | 4 +-
test/sql-tap/analyze1.test.lua | 2 +-
test/sql-tap/analyze3.test.lua | 2 +-
test/sql-tap/analyze7.test.lua | 8 +-
test/sql-tap/analyze9.test.lua | 12 +-
test/sql-tap/analyzeF.test.lua | 2 +-
test/sql-tap/eqp.test.lua | 14 +-
test/sql-tap/gh-2996-indexed-by.test.lua | 10 +-
test/sql-tap/index1.test.lua | 2 +-
test/sql-tap/join.test.lua | 6 +-
test/sql-tap/lua-tables.test.lua | 8 +-
test/sql/delete.result | 4 +-
40 files changed, 1121 insertions(+), 2346 deletions(-)
--
2.15.1
More information about the Tarantool-patches
mailing list