From: "N.Tatunov" <n.tatunov@tarantool.org> To: tarantool-patches@freelists.org Cc: avkhatskevich@tarantool.org, "N.Tatunov" <n.tatunov@tarantool.org> Subject: [tarantool-patches] [PATCH v2 0/2] sql: pattern comparison fixes & GLOB removal Date: Thu, 16 Aug 2018 20:00:54 +0300 [thread overview] Message-ID: <cover.1534436835.git.n.tatunov@tarantool.org> (raw) Branch: https://github.com/tarantool/tarantool/tree/N_Tatunov/gh-3251-where-like-hanging Issues: https://github.com/tarantool/tarantool/issues/3251 https://github.com/tarantool/tarantool/issues/3334 https://github.com/tarantool/tarantool/issues/3589 https://github.com/tarantool/tarantool/issues/3572 Currently we have internal functions for pattern comparisons that are hanging in certain situations. This patch-set is aimed on refactoring these functions, fixing possible bugs including the ones that are known. Also since we want to get close to ANSI SQL it was decided that we're going to remove GLOB from Tarantool. And due to changes in comparisons some tests containing GLOB would need refactoring. Thus in order not to refactor tests that are anyways going to be removed it is quite convenient to remove GLOB support in the same patch-set. Changes in v2: - Fixes for Alexey's review comments on previous version - A lot of code that was touched in the patch is refactored according to our code-style. - GLOB is removed - Internals refactored with respect to GLOB removal - Found and removed redundant prototype for sqlite3_user_data function N.Tatunov (2): sql: LIKE & GLOB pattern comparison issue sql: remove GLOB from Tarantool extra/mkkeywordhash.c | 1 - src/box/sql/analyze.c | 7 +- src/box/sql/func.c | 477 +- src/box/sql/pragma.c | 6 +- src/box/sql/sqliteInt.h | 16 +- src/box/sql/sqliteLimit.h | 3 +- src/box/sql/vdbe.c | 2 +- src/box/sql/wherecode.c | 2 +- src/box/sql/whereexpr.c | 157 +- test/sql-tap/alter.test.lua | 6 +- test/sql-tap/analyze9.test.lua | 8 +- test/sql-tap/e_expr.test.lua | 305 +- .../gh-3251-string-pattern-comparison.test.lua | 213 + test/sql-tap/like2.test.lua | 10 +- test/sql-tap/like3.test.lua | 26 +- test/sql-tap/tkt1537.test.lua | 4 +- test/sql-tap/triggerA.test.lua | 2 +- test/sql-tap/where3.test.lua | 6 +- test/sql-tap/where7.test.lua | 4780 ++++++++++---------- 19 files changed, 3112 insertions(+), 2919 deletions(-) create mode 100755 test/sql-tap/gh-3251-string-pattern-comparison.test.lua -- 2.7.4
next reply other threads:[~2018-08-16 17:01 UTC|newest] Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-08-16 17:00 N.Tatunov [this message] 2018-08-16 17:00 ` [tarantool-patches] [PATCH 1/2] sql: LIKE & GLOB pattern comparison issue N.Tatunov 2018-08-17 9:23 ` [tarantool-patches] " Alex Khatskevich 2018-08-17 11:17 ` Alexander Turenko 2018-08-17 11:42 ` Alex Khatskevich 2018-09-09 13:33 ` Nikita Tatunov 2018-09-10 22:20 ` Alex Khatskevich 2018-09-11 6:06 ` Nikita Tatunov 2018-09-11 10:06 ` Alex Khatskevich 2018-09-11 13:31 ` Nikita Tatunov 2018-10-18 18:02 ` Nikita Tatunov 2018-10-21 3:51 ` Alexander Turenko 2018-10-26 15:19 ` Nikita Tatunov 2018-10-29 13:01 ` Alexander Turenko 2018-10-31 5:25 ` Nikita Tatunov 2018-11-01 10:30 ` Alexander Turenko 2018-11-14 14:16 ` n.pettik 2018-11-14 17:06 ` Alexander Turenko 2018-08-16 17:00 ` [tarantool-patches] [PATCH 2/2] sql: remove GLOB from Tarantool N.Tatunov 2018-08-17 8:25 ` [tarantool-patches] " Alex Khatskevich 2018-08-17 8:49 ` n.pettik 2018-08-17 9:01 ` Alex Khatskevich 2018-08-17 9:20 ` n.pettik 2018-08-17 9:28 ` Alex Khatskevich [not found] ` <04D02794-07A5-4146-9144-84EE720C8656@corp.mail.ru> 2018-08-17 8:53 ` Alex Khatskevich 2018-08-17 11:26 ` Alexander Turenko 2018-08-17 11:34 ` Alexander Turenko 2018-08-17 13:46 ` Nikita Tatunov 2018-09-09 14:57 ` Nikita Tatunov 2018-09-10 22:06 ` Alex Khatskevich 2018-09-11 7:38 ` Nikita Tatunov 2018-09-11 10:11 ` Alexander Turenko 2018-09-11 10:22 ` Alex Khatskevich 2018-09-11 12:03 ` Alex Khatskevich 2018-10-18 20:28 ` Nikita Tatunov 2018-10-21 3:48 ` Alexander Turenko 2018-10-26 15:21 ` Nikita Tatunov 2018-10-29 12:15 ` Alexander Turenko 2018-11-08 15:09 ` Nikita Tatunov 2018-11-09 12:18 ` Alexander Turenko 2018-11-10 3:38 ` Nikita Tatunov 2018-11-13 19:23 ` Alexander Turenko 2018-11-14 14:16 ` n.pettik 2018-11-14 17:41 ` Alexander Turenko 2018-11-14 21:48 ` n.pettik 2018-11-15 4:57 ` [tarantool-patches] Re: [PATCH v2 0/2] sql: pattern comparison fixes & GLOB removal Kirill Yukhin -- strict thread matches above, loose matches on Subject: below -- 2018-08-14 16:47 [tarantool-patches] " N.Tatunov
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.1534436835.git.n.tatunov@tarantool.org \ --to=n.tatunov@tarantool.org \ --cc=avkhatskevich@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v2 0/2] sql: pattern comparison fixes & GLOB removal' \ /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