[tarantool-patches] [PATCH v1 00/12] sql: set errors in VDBE using diag_set()

imeevma at tarantool.org imeevma at tarantool.org
Sun May 5 15:17:00 MSK 2019


This set of patches partially replaces the SQL error system with
the Tarantool error system. There are still some parts of the SQL
error system in the code, the most notable of which are the rc
field in struct sql and struct Vdbe and the mallocFailed field in
struct sql. I tried to remove the rc field from struct Vdbe, but
it still has too many connections to the SQL code. I think this
should be done in a different set of patches.

https://github.com/tarantool/tarantool/issues/4074
https://github.com/tarantool/tarantool/tree/imeevma/gh-4074-diag_set-in-vdbe

Mergen Imeev (12):
  sql: remove errors SQL_TARANTOOL_*_FAIL
  sql: remove error ER_SQL
  sql: rework diag_set() in OP_Halt
  sql: make SQL_TARANTOOL_ERROR the only errcode of OP_Halt
  sql: remove error SQL_INTERRUPT
  sql: remove error SQL_MISMATCH
  sql: set errors in VDBE using diag_set()
  sql: remove field zErrMsg from struct Vdbe
  sql: remove field pErr from struct sql
  sql: remove field errCode from struct sql
  sql: remove sqlError() and remove sqlErrorWithMsg()
  sql: use diag_set() to set an error in SQL functions

 src/box/alter.cc                                   |   4 +-
 src/box/errcode.h                                  |   2 +-
 src/box/execute.c                                  |  23 +-
 src/box/lua/lua_sql.c                              |  15 +-
 src/box/sql.c                                      |  37 +-
 src/box/sql/analyze.c                              |   6 +-
 src/box/sql/build.c                                |  31 +-
 src/box/sql/delete.c                               |   4 +-
 src/box/sql/expr.c                                 |   7 +-
 src/box/sql/fk_constraint.c                        |   7 +-
 src/box/sql/func.c                                 | 104 +++--
 src/box/sql/insert.c                               |  29 +-
 src/box/sql/legacy.c                               |   2 -
 src/box/sql/main.c                                 | 106 +----
 src/box/sql/malloc.c                               |   5 -
 src/box/sql/prepare.c                              |   8 +-
 src/box/sql/resolve.c                              |   2 +-
 src/box/sql/select.c                               |  13 +-
 src/box/sql/sqlInt.h                               |  38 --
 src/box/sql/tarantoolInt.h                         |   5 +-
 src/box/sql/tokenize.c                             |   3 -
 src/box/sql/trigger.c                              |  18 +-
 src/box/sql/util.c                                 |  81 ----
 src/box/sql/vdbe.c                                 | 449 +++++++--------------
 src/box/sql/vdbeInt.h                              |  40 +-
 src/box/sql/vdbeapi.c                              | 178 +-------
 src/box/sql/vdbeaux.c                              | 163 ++------
 src/box/sql/vdbemem.c                              |   9 +-
 test/box/misc.result                               |   1 -
 test/sql-tap/autoinc.test.lua                      |   4 +-
 test/sql-tap/e_select1.test.lua                    |   4 +-
 test/sql-tap/gh-2931-savepoints.test.lua           |   4 +-
 .../gh-3307-xfer-optimization-issue.test.lua       |  10 +-
 test/sql-tap/gh2259-in-stmt-trans.test.lua         |   8 +-
 test/sql-tap/gh2964-abort.test.lua                 |   2 +-
 test/sql-tap/intpkey.test.lua                      |   2 +-
 test/sql-tap/limit.test.lua                        |  26 +-
 test/sql-tap/misc1.test.lua                        |   2 +-
 test/sql-tap/select3.test.lua                      |   2 +-
 test/sql-tap/select4.test.lua                      |   8 +-
 test/sql-tap/select5.test.lua                      |  10 +-
 test/sql-tap/subselect.test.lua                    |   6 +-
 test/sql-tap/table.test.lua                        |   8 +-
 test/sql-tap/tkt-4a03edc4c8.test.lua               |   2 +-
 test/sql-tap/tkt1473.test.lua                      |  36 +-
 test/sql-tap/trigger1.test.lua                     |   6 +-
 test/sql-tap/unique.test.lua                       |  10 +-
 test/sql/collation.result                          |  18 +-
 test/sql/delete.result                             |   7 +-
 test/sql/errinj.result                             |   6 +-
 test/sql/foreign-keys.result                       |   3 +-
 test/sql/func-recreate.result                      |   3 +-
 test/sql/insert-unique.result                      |   6 +-
 test/sql/iproto.result                             |  21 +-
 test/sql/on-conflict.result                        |   4 +-
 test/sql/persistency.result                        |   6 +-
 test/sql/transition.result                         |   6 +-
 test/sql/triggers.result                           |  21 +-
 test/sql/types.result                              |   9 +-
 59 files changed, 458 insertions(+), 1192 deletions(-)

-- 
2.7.4





More information about the Tarantool-patches mailing list