From: Nikita Pettik <korablev@tarantool.org> To: tarantool-patches@freelists.org Cc: v.shpilevoy@tarantool.org, Nikita Pettik <korablev@tarantool.org> Subject: [tarantool-patches] [PATCH 0/7] Finish SQL DD integration Date: Fri, 24 Aug 2018 01:55:46 +0300 [thread overview] Message-ID: <cover.1535063199.git.korablev@tarantool.org> (raw) 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
next reply other threads:[~2018-08-23 22:56 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-08-23 22:55 Nikita Pettik [this message] [not found] ` <cover.1535064700.git.korablev@tarantool.org> 2018-08-23 22:55 ` [tarantool-patches] [PATCH 1/7] sql: remove struct schema from struct Table Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:51 ` n.pettik 2018-09-16 19:32 ` Vladislav Shpilevoy 2018-09-19 10:58 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 2/7] sql: remove SQLite original struct Index Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:51 ` n.pettik 2018-09-06 19:54 ` Vladislav Shpilevoy 2018-09-16 19:04 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 3/7] sql: remove struct Table from analyze routine Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:52 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 4/7] sql: refactor ALTER RENAME code generation Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:52 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 5/7] sql: remove lookups in Table hash Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:52 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 6/7] sql: don't add system spaces to " Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-02 23:52 ` n.pettik 2018-09-06 19:54 ` Vladislav Shpilevoy 2018-09-16 19:04 ` n.pettik 2018-08-23 22:55 ` [tarantool-patches] [PATCH 7/7] sql: finish DD integration Nikita Pettik 2018-08-29 0:58 ` [tarantool-patches] " Vladislav Shpilevoy 2018-09-20 14:45 ` Kirill Yukhin
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.1535063199.git.korablev@tarantool.org \ --to=korablev@tarantool.org \ --cc=tarantool-patches@freelists.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [tarantool-patches] [PATCH 0/7] Finish SQL DD integration' \ /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