Tarantool development patches archive
 help / color / mirror / Atom feed
* [tarantool-patches] [PATCH 0/9] Introduce type BOOLEAN in SQL
@ 2019-04-14 15:03 Nikita Pettik
  2019-04-14 15:03 ` [tarantool-patches] [PATCH 1/9] sql: refactor mem_apply_numeric_type() Nikita Pettik
                   ` (10 more replies)
  0 siblings, 11 replies; 42+ messages in thread
From: Nikita Pettik @ 2019-04-14 15:03 UTC (permalink / raw)
  To: tarantool-patches; +Cc: v.shpilevoy, kostja, Nikita Pettik

Branch: https://github.com/tarantool/tarantool/tree/np/gh-3648-sql-introduce-bool
Issue: https://github.com/tarantool/tarantool/issues/3648
Issue: https://github.com/tarantool/tarantool/issues/3723

This patch-set makes type BOOLEAN available in SQL.
It consists of two main parts: first one itroduces basic boolean
capabilities like new literals, column type, insert/select etc;
second one makes predicates and search condition used in WHERE
and JOIN clauses accept and return boolean values.

For ANSI compliance see thread in @dev with subject "[dev] Boolean type in SQL"

Nikita Pettik (9):
  sql: refactor mem_apply_numeric_type()
  sql: disallow text values participate in sum() aggregate
  sql: use msgpack types instead of custom ones
  sql: introduce type boolean
  sql: improve type determination for column meta
  sql: make comparison predicate return boolean
  sql: make predicates accept and return boolean
  sql: make LIKE predicate return boolean result
  sql: make <search condition> accept only boolean

 extra/mkkeywordhash.c                              |   5 +
 src/box/bind.c                                     |  37 +-
 src/box/execute.c                                  |  21 +-
 src/box/lua/execute.c                              |   7 +-
 src/box/lua/lua_sql.c                              |  15 +-
 src/box/sql/build.c                                |  11 +-
 src/box/sql/date.c                                 |   2 +-
 src/box/sql/expr.c                                 | 107 ++--
 src/box/sql/func.c                                 | 155 +++---
 src/box/sql/legacy.c                               |   2 +-
 src/box/sql/parse.y                                |  19 +-
 src/box/sql/parse_def.c                            |   5 +
 src/box/sql/select.c                               |   4 +-
 src/box/sql/sqlInt.h                               |  31 +-
 src/box/sql/vdbe.c                                 | 154 +++---
 src/box/sql/vdbeInt.h                              |  24 +-
 src/box/sql/vdbeapi.c                              |  88 ++-
 src/box/sql/vdbeaux.c                              |  31 +-
 src/box/sql/vdbemem.c                              |  81 ++-
 src/box/sql/where.c                                |   3 +-
 src/box/sql/wherecode.c                            |   3 +-
 src/box/sql/whereexpr.c                            |   2 +-
 test/sql-tap/aggnested.test.lua                    |  10 +-
 test/sql-tap/cse.test.lua                          |   6 +-
 test/sql-tap/e_delete.test.lua                     |   8 +-
 test/sql-tap/e_select1.test.lua                    |  54 +-
 test/sql-tap/func.test.lua                         |   2 +-
 .../gh-3251-string-pattern-comparison.test.lua     |  76 +--
 test/sql-tap/identifier_case.test.lua              |  10 +-
 test/sql-tap/in1.test.lua                          |   8 +-
 test/sql-tap/in3.test.lua                          |   2 +-
 test/sql-tap/join5.test.lua                        |  20 +-
 test/sql-tap/limit.test.lua                        |   2 +-
 test/sql-tap/misc3.test.lua                        |   2 +-
 test/sql-tap/resolver01.test.lua                   |   2 +-
 test/sql-tap/select1.test.lua                      |   4 +-
 test/sql-tap/select2.test.lua                      |   8 +-
 test/sql-tap/select4.test.lua                      |   2 +-
 test/sql-tap/select5.test.lua                      |   3 +-
 test/sql-tap/select6.test.lua                      |   4 +-
 test/sql-tap/select9.test.lua                      |   6 +-
 test/sql-tap/subquery.test.lua                     |   4 +-
 test/sql-tap/tkt2832.test.lua                      |   2 +-
 test/sql-tap/tkt3346.test.lua                      |   2 +-
 test/sql-tap/tkt3541.test.lua                      |   2 +-
 test/sql-tap/whereG.test.lua                       |   6 +-
 test/sql/check-clear-ephemeral.result              |   2 +-
 test/sql/gh-2347-max-int-literals.result           |   2 +-
 test/sql/gh-3199-no-mem-leaks.result               |  18 +-
 test/sql/gh-3888-values-blob-assert.result         |   2 +-
 test/sql/persistency.result                        |   8 +-
 test/sql/transition.result                         |   4 +-
 test/sql/types.result                              | 605 ++++++++++++++++++++-
 test/sql/types.test.lua                            | 132 +++++
 54 files changed, 1362 insertions(+), 463 deletions(-)

-- 
2.15.1

^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2019-04-25  8:46 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-14 15:03 [tarantool-patches] [PATCH 0/9] Introduce type BOOLEAN in SQL Nikita Pettik
2019-04-14 15:03 ` [tarantool-patches] [PATCH 1/9] sql: refactor mem_apply_numeric_type() Nikita Pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 2/9] sql: disallow text values participate in sum() aggregate Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:54     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:58         ` n.pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 3/9] sql: use msgpack types instead of custom ones Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:54     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:58         ` n.pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 4/9] sql: introduce type boolean Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:54     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:58         ` n.pettik
2019-04-23 21:06           ` Vladislav Shpilevoy
2019-04-14 15:04 ` [tarantool-patches] [PATCH 5/9] sql: improve type determination for column meta Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:54     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:58         ` n.pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 6/9] sql: make comparison predicate return boolean Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:54     ` n.pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 7/9] sql: make predicates accept and " Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:55     ` n.pettik
2019-04-14 15:04 ` [tarantool-patches] [PATCH 9/9] sql: make <search condition> accept only boolean Nikita Pettik
2019-04-16 14:12   ` [tarantool-patches] " Vladislav Shpilevoy
2019-04-18 17:55     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:59         ` n.pettik
2019-04-23 21:06           ` Vladislav Shpilevoy
2019-04-23 22:01             ` n.pettik
     [not found] ` <b2a84f129c2343d3da3311469cbb7b20488a21c2.1555252410.git.korablev@tarantool.org>
2019-04-16 14:12   ` [tarantool-patches] Re: [PATCH 8/9] sql: make LIKE predicate return boolean result Vladislav Shpilevoy
2019-04-18 17:55     ` n.pettik
2019-04-22 18:02       ` Vladislav Shpilevoy
2019-04-23 19:58         ` n.pettik
2019-04-24 10:28 ` [tarantool-patches] Re: [PATCH 0/9] Introduce type BOOLEAN in SQL Vladislav Shpilevoy
2019-04-25  8:46 ` Kirill Yukhin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox