Tarantool development patches archive
 help / color / mirror / Atom feed
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

             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