From: imeevma@tarantool.org To: korablev@tarantool.org Cc: tarantool-patches@freelists.org Subject: [tarantool-patches] [PATCH v1 01/12] sql: remove errors SQL_TARANTOOL_*_FAIL Date: Sun, 5 May 2019 15:17:02 +0300 [thread overview] Message-ID: <4e95d48acff0665630f766d394a36763582ef00b.1557056617.git.imeevma@gmail.com> (raw) In-Reply-To: <cover.1557056617.git.imeevma@gmail.com> Errors SQL_TARANTOOL_DELETE_FAIL, SQL_TARANTOOL_ITERATOR_FAIL and SQL_TARANTOOL_INSERT_FAIL have almost no functionality, but can lead to incorrect behavior. This patch replaces them with SQL_TARANTOOL_ERROR. It will simplify work with the errors. --- src/box/sql.c | 37 ++++++++-------------- src/box/sql/main.c | 3 -- src/box/sql/sqlInt.h | 3 -- src/box/sql/tarantoolInt.h | 5 +-- src/box/sql/vdbe.c | 2 +- test/sql-tap/autoinc.test.lua | 2 +- 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/misc1.test.lua | 2 +- test/sql-tap/table.test.lua | 8 ++--- test/sql-tap/tkt-4a03edc4c8.test.lua | 2 +- test/sql-tap/trigger1.test.lua | 6 ++-- test/sql-tap/unique.test.lua | 10 +++--- test/sql/collation.result | 18 ++++------- test/sql/errinj.result | 6 ++-- test/sql/foreign-keys.result | 3 +- test/sql/insert-unique.result | 6 ++-- test/sql/iproto.result | 3 +- test/sql/persistency.result | 6 ++-- test/sql/transition.result | 6 ++-- test/sql/triggers.result | 2 +- 24 files changed, 62 insertions(+), 94 deletions(-) diff --git a/src/box/sql.c b/src/box/sql.c index 1fb93e1..3593242 100644 --- a/src/box/sql.c +++ b/src/box/sql.c @@ -162,15 +162,6 @@ const char *tarantoolErrorMessage() return box_error_message(box_error_last()); } -int -is_tarantool_error(int rc) -{ - return (rc == SQL_TARANTOOL_ERROR || - rc == SQL_TARANTOOL_ITERATOR_FAIL || - rc == SQL_TARANTOOL_DELETE_FAIL || - rc == SQL_TARANTOOL_INSERT_FAIL); -} - const void *tarantoolsqlPayloadFetch(BtCursor *pCur, u32 *pAmt) { assert(pCur->curFlags & BTCF_TaCursor || @@ -421,7 +412,7 @@ int tarantoolsqlEphemeralInsert(struct space *space, const char *tuple, assert(space != NULL); mp_tuple_assert(tuple, tuple_end); if (space_ephemeral_replace(space, tuple, tuple_end) != 0) - return SQL_TARANTOOL_INSERT_FAIL; + return SQL_TARANTOOL_ERROR; return SQL_OK; } @@ -448,7 +439,7 @@ insertOrReplace(struct space *space, const char *tuple, const char *tuple_end, request.type = type; mp_tuple_assert(request.tuple, request.tuple_end); int rc = box_process_rw(&request, space, NULL); - return rc == 0 ? SQL_OK : SQL_TARANTOOL_INSERT_FAIL; + return rc == 0 ? SQL_OK : SQL_TARANTOOL_ERROR; } int tarantoolsqlInsert(struct space *space, const char *tuple, @@ -483,12 +474,12 @@ int tarantoolsqlEphemeralDelete(BtCursor *pCur) pCur->iter->index->def->key_def, &key_size); if (key == NULL) - return SQL_TARANTOOL_DELETE_FAIL; + return SQL_TARANTOOL_ERROR; int rc = space_ephemeral_delete(pCur->space, key); if (rc != 0) { diag_log(); - return SQL_TARANTOOL_DELETE_FAIL; + return SQL_TARANTOOL_ERROR; } return SQL_OK; } @@ -509,11 +500,11 @@ int tarantoolsqlDelete(BtCursor *pCur, u8 flags) pCur->iter->index->def->key_def, &key_size); if (key == NULL) - return SQL_TARANTOOL_DELETE_FAIL; + return SQL_TARANTOOL_ERROR; rc = sql_delete_by_key(pCur->space, pCur->index->def->iid, key, key_size); - return rc == 0 ? SQL_OK : SQL_TARANTOOL_DELETE_FAIL; + return rc == 0 ? SQL_OK : SQL_TARANTOOL_ERROR; } int @@ -531,7 +522,7 @@ sql_delete_by_key(struct space *space, uint32_t iid, char *key, assert(space_index(space, iid)->def->opts.is_unique); int rc = box_process_rw(&request, space, &unused); - return rc == 0 ? SQL_OK : SQL_TARANTOOL_DELETE_FAIL; + return rc == 0 ? SQL_OK : SQL_TARANTOOL_ERROR; } /* @@ -553,7 +544,7 @@ int tarantoolsqlEphemeralClearTable(BtCursor *pCur) 0 /* part_count */); if (it == NULL) { pCur->eState = CURSOR_INVALID; - return SQL_TARANTOOL_ITERATOR_FAIL; + return SQL_TARANTOOL_ERROR; } struct tuple *tuple; @@ -565,7 +556,7 @@ int tarantoolsqlEphemeralClearTable(BtCursor *pCur) &key_size); if (space_ephemeral_delete(pCur->space, key) != 0) { iterator_delete(it); - return SQL_TARANTOOL_DELETE_FAIL; + return SQL_TARANTOOL_ERROR; } } iterator_delete(it); @@ -592,7 +583,7 @@ int tarantoolsqlClearTable(struct space *space, uint32_t *tuple_count) struct index *pk = space_index(space, 0 /* PK */); struct iterator *iter = index_create_iterator(pk, ITER_ALL, nil_key, 0); if (iter == NULL) - return SQL_TARANTOOL_ITERATOR_FAIL; + return SQL_TARANTOOL_ERROR; while (iterator_next(iter, &tuple) == 0 && tuple != NULL) { request.key = tuple_extract_key(tuple, pk->def->key_def, &key_size); @@ -600,7 +591,7 @@ int tarantoolsqlClearTable(struct space *space, uint32_t *tuple_count) rc = box_process_rw(&request, space, &unused); if (rc != 0) { iterator_delete(iter); - return SQL_TARANTOOL_DELETE_FAIL; + return SQL_TARANTOOL_ERROR; } (*tuple_count)++; } @@ -899,7 +890,7 @@ cursor_seek(BtCursor *pCur, int *pRes) uint32_t part_count = mp_decode_array(&key); if (key_validate(pCur->index->def, pCur->iter_type, key, part_count)) { diag_log(); - return SQL_TARANTOOL_ITERATOR_FAIL; + return SQL_TARANTOOL_ERROR; } struct space *space = pCur->space; @@ -913,7 +904,7 @@ cursor_seek(BtCursor *pCur, int *pRes) if (txn != NULL) txn_rollback_stmt(); pCur->eState = CURSOR_INVALID; - return SQL_TARANTOOL_ITERATOR_FAIL; + return SQL_TARANTOOL_ERROR; } if (txn != NULL) txn_commit_ro_stmt(txn); @@ -940,7 +931,7 @@ cursor_advance(BtCursor *pCur, int *pRes) struct tuple *tuple; if (iterator_next(pCur->iter, &tuple) != 0) - return SQL_TARANTOOL_ITERATOR_FAIL; + return SQL_TARANTOOL_ERROR; if (pCur->last_tuple) box_tuple_unref(pCur->last_tuple); if (tuple) { diff --git a/src/box/sql/main.c b/src/box/sql/main.c index fe1135a..ed07553 100644 --- a/src/box/sql/main.c +++ b/src/box/sql/main.c @@ -383,9 +383,6 @@ sqlErrStr(int rc) /* SQL_MISUSE */ "library routine called out of sequence", /* SQL_RANGE */ "bind or column index out of range", - /* SQL_TARANTOOL_ITERATOR_FAIL */ "Tarantool's iterator failed", - /* SQL_TARANTOOL_INSERT_FAIL */ "Tarantool's insert failed", - /* SQL_TARANTOOL_DELETE_FAIL */ "Tarantool's delete failed", /* SQL_TARANTOOL_ERROR */ "SQL-/Tarantool error", }; const char *zErr = "unknown error"; diff --git a/src/box/sql/sqlInt.h b/src/box/sql/sqlInt.h index e59b57f..05a4042 100644 --- a/src/box/sql/sqlInt.h +++ b/src/box/sql/sqlInt.h @@ -392,9 +392,6 @@ enum sql_ret_code { SQL_MISUSE, /** 2nd parameter to sql_bind out of range. */ SQL_RANGE, - SQL_TARANTOOL_ITERATOR_FAIL, - SQL_TARANTOOL_INSERT_FAIL, - SQL_TARANTOOL_DELETE_FAIL, SQL_TARANTOOL_ERROR, /** Warnings from sql_log(). */ SQL_WARNING, diff --git a/src/box/sql/tarantoolInt.h b/src/box/sql/tarantoolInt.h index 2b04d96..f15e147 100644 --- a/src/box/sql/tarantoolInt.h +++ b/src/box/sql/tarantoolInt.h @@ -13,8 +13,6 @@ struct fk_constraint_def; /* Misc */ const char *tarantoolErrorMessage(); -int is_tarantool_error(int rc); - /* Storage interface. */ const void *tarantoolsqlPayloadFetch(BtCursor * pCur, u32 * pAmt); @@ -51,8 +49,7 @@ int tarantoolsqlDelete(BtCursor * pCur, u8 flags); * @param key Key of record to be deleted. * @param key_size Size of key. * - * @retval SQL_OK on success, SQL_TARANTOOL_DELETE_FAIL - * otherwise. + * @retval SQL_OK on success, SQL_TARANTOOL_ERROR otherwise. */ int sql_delete_by_key(struct space *space, uint32_t iid, char *key, diff --git a/src/box/sql/vdbe.c b/src/box/sql/vdbe.c index 3bd8223..5222a4e 100644 --- a/src/box/sql/vdbe.c +++ b/src/box/sql/vdbe.c @@ -5469,7 +5469,7 @@ abort_due_to_error: /* Avoiding situation when Tarantool error is set, * but error message isn't. */ - if (is_tarantool_error(rc) && tarantoolErrorMessage()) { + if (rc == SQL_TARANTOOL_ERROR && tarantoolErrorMessage()) { msg = tarantoolErrorMessage(); } else { msg = sqlErrStr(rc); diff --git a/test/sql-tap/autoinc.test.lua b/test/sql-tap/autoinc.test.lua index 4db2783..257621b 100755 --- a/test/sql-tap/autoinc.test.lua +++ b/test/sql-tap/autoinc.test.lua @@ -531,7 +531,7 @@ test:do_catchsql_test( INSERT INTO t6 VALUES(NULL,1); ]], { -- <autoinc-6.2> - 1, "Failed to execute SQL statement: Sequence 'T6' has overflowed" + 1, "Sequence 'T6' has overflowed" -- </autoinc-6.2> }) diff --git a/test/sql-tap/gh-2931-savepoints.test.lua b/test/sql-tap/gh-2931-savepoints.test.lua index 5c0daef..6123fc4 100755 --- a/test/sql-tap/gh-2931-savepoints.test.lua +++ b/test/sql-tap/gh-2931-savepoints.test.lua @@ -81,13 +81,13 @@ local testcases = { {0,{1,2,10,11,1,2,4,10,11}}}, {"14", [[insert into t1 values(4);]], - {1,"Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"}}, + {1,"Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"}}, {"15", [[select * from t1 union all select * from t2;]], {0,{1,2,10,11,1,2,4,10,11}}}, {"16", [[insert or rollback into t1 values(4);]], - {1,"Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"}}, + {1,"Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"}}, {"17", -- should work as transaction is rolled back [[insert or rollback into t1 values(4); select * from t1 union all select * from t2;]], diff --git a/test/sql-tap/gh-3307-xfer-optimization-issue.test.lua b/test/sql-tap/gh-3307-xfer-optimization-issue.test.lua index 859a6ff..bb8a498 100755 --- a/test/sql-tap/gh-3307-xfer-optimization-issue.test.lua +++ b/test/sql-tap/gh-3307-xfer-optimization-issue.test.lua @@ -139,7 +139,7 @@ test:do_catchsql_xfer_test( INSERT INTO t2 SELECT * FROM t1; ]], { -- <xfer-optimization-1.9> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" -- <xfer-optimization-1.9> }, { exp_xfer_count = 0 @@ -210,7 +210,7 @@ test:do_catchsql_xfer_test( INSERT INTO t2 SELECT * FROM t1; ]], { -- <xfer-optimization-1.13> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" -- <xfer-optimization-1.13> }, { exp_xfer_count = 0 @@ -245,7 +245,7 @@ test:do_catchsql_xfer_test( INSERT OR ABORT INTO t2 SELECT * FROM t1; ]], { -- <xfer-optimization-1.20> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" -- <xfer-optimization-1.20> }, { exp_xfer_count = 1 @@ -313,7 +313,7 @@ test:do_catchsql_xfer_test( INSERT OR ROLLBACK INTO t2 SELECT * FROM t1; ]], { -- <xfer-optimization-1.24> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" -- <xfer-optimization-1.24> }, { exp_xfer_count = 0 @@ -381,7 +381,7 @@ test:do_catchsql_xfer_test( INSERT OR FAIL INTO t2 SELECT * FROM t1; ]], { -- <xfer-optimization-1.28> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'" -- <xfer-optimization-1.28> }, { exp_xfer_count = 1 diff --git a/test/sql-tap/gh2259-in-stmt-trans.test.lua b/test/sql-tap/gh2259-in-stmt-trans.test.lua index 36f5e90..6bd0550 100755 --- a/test/sql-tap/gh2259-in-stmt-trans.test.lua +++ b/test/sql-tap/gh2259-in-stmt-trans.test.lua @@ -18,7 +18,7 @@ for _, prefix in pairs({"BEFORE", "AFTER"}) do test:do_catchsql_test(prefix..'_insert1', 'INSERT INTO t1 VALUES(1, 2)', - {1,"Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) + {1,"Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) test:do_execsql_test(prefix..'_insert1_check1', 'SELECT * FROM t1', @@ -34,7 +34,7 @@ for _, prefix in pairs({"BEFORE", "AFTER"}) do test:do_catchsql_test(prefix..'_update1', 'UPDATE t1 SET s1=1', - {1,"Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) + {1,"Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) test:do_execsql_test(prefix..'_update1_check1', 'SELECT * FROM t1', @@ -52,7 +52,7 @@ for _, prefix in pairs({"BEFORE", "AFTER"}) do test:do_catchsql_test(prefix..'delete1', 'DELETE FROM t1;', - {1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) + {1, "Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) -- Nothing should be inserted due to abort test:do_execsql_test('delete1_check1', @@ -69,7 +69,7 @@ end -- Check multi-insert test:do_catchsql_test('insert2', 'INSERT INTO t1 VALUES (5, 6), (6, 7)', - {1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) + {1, "Duplicate key exists in unique index 'pk_unnamed_T2_2' in space 'T2'"}) test:do_execsql_test('insert2_check', 'SELECT * FROM t1;', {3, 3}) diff --git a/test/sql-tap/gh2964-abort.test.lua b/test/sql-tap/gh2964-abort.test.lua index db9a111..3bce569 100755 --- a/test/sql-tap/gh2964-abort.test.lua +++ b/test/sql-tap/gh2964-abort.test.lua @@ -12,7 +12,7 @@ test:do_catchsql_test( test_prefix.."1.0.2", "CREATE TABLE t2 (a int primary key);") -local insert_err = {1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"} +local insert_err = {1, "Duplicate key exists in unique index 'pk_unnamed_T2_1' in space 'T2'"} local data = { --id|TRIG TYPE|INSERT TYPE|insert error|commit error| result {1, "AFTER", "or abort", insert_err, {0}, {1,1,2}}, diff --git a/test/sql-tap/intpkey.test.lua b/test/sql-tap/intpkey.test.lua index b2e8084..bec2670 100755 --- a/test/sql-tap/intpkey.test.lua +++ b/test/sql-tap/intpkey.test.lua @@ -96,7 +96,7 @@ test:do_catchsql_test( INSERT INTO t1 VALUES(5,'second','entry'); ]], { -- <intpkey-1.6> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" -- </intpkey-1.6> }) diff --git a/test/sql-tap/misc1.test.lua b/test/sql-tap/misc1.test.lua index cd0e103..dbc0699 100755 --- a/test/sql-tap/misc1.test.lua +++ b/test/sql-tap/misc1.test.lua @@ -383,7 +383,7 @@ test:do_catchsql_test( INSERT INTO t5 VALUES(1,2,4); ]], { -- <misc1-7.4> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T5_1' in space 'T5'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T5_1' in space 'T5'" -- </misc1-7.4> }) diff --git a/test/sql-tap/table.test.lua b/test/sql-tap/table.test.lua index 5b793c0..04fd175 100755 --- a/test/sql-tap/table.test.lua +++ b/test/sql-tap/table.test.lua @@ -1211,7 +1211,7 @@ test:do_catchsql_test( INSERT INTO T21 VALUES(1, 2, 2); ]], { -- <table-21.2> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T21_1' in space 'T21'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T21_1' in space 'T21'" -- </table-21.2> }) @@ -1283,7 +1283,7 @@ test:do_catchsql_test( INSERT INTO T22 VALUES(2, 1, 1); ]], { -- <table-22.3> - 1,"Failed to execute SQL statement: Duplicate key exists in unique index 'unique_ONE_2' in space 'T22'" + 1,"Duplicate key exists in unique index 'unique_ONE_2' in space 'T22'" -- </table-22.3> }) @@ -1308,7 +1308,7 @@ test:do_catchsql_test( INSERT INTO T24 VALUES(2, 1, 1); ]], { -- <table-22.5> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'unique_TWO_2' in space 'T24'" + 1, "Duplicate key exists in unique index 'unique_TWO_2' in space 'T24'" -- </table-22.5> }) @@ -1362,7 +1362,7 @@ test:do_catchsql_test( INSERT INTO T28 VALUES(11); ]], { -- <table-22.9> - 1,"Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T28_1' in space 'T28'" + 1,"Duplicate key exists in unique index 'pk_unnamed_T28_1' in space 'T28'" -- </table-22.9> }) diff --git a/test/sql-tap/tkt-4a03edc4c8.test.lua b/test/sql-tap/tkt-4a03edc4c8.test.lua index 0f44d4f..cb7a982 100755 --- a/test/sql-tap/tkt-4a03edc4c8.test.lua +++ b/test/sql-tap/tkt-4a03edc4c8.test.lua @@ -38,7 +38,7 @@ test:do_test( ]] end, { -- <tkt-4a03ed-1.1> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" -- </tkt-4a03ed-1.1> }) diff --git a/test/sql-tap/trigger1.test.lua b/test/sql-tap/trigger1.test.lua index dfc2822..64763fa 100755 --- a/test/sql-tap/trigger1.test.lua +++ b/test/sql-tap/trigger1.test.lua @@ -260,7 +260,7 @@ test:do_catchsql_test( end; ]], { -- <trigger1-1.12> - 1, "Failed to execute SQL statement: SQL error: cannot create INSTEAD OF trigger on space: T1" + 1, "SQL error: cannot create INSTEAD OF trigger on space: T1" -- </trigger1-1.12> }) @@ -274,7 +274,7 @@ test:do_catchsql_test( end; ]], { -- <trigger1-1.13> - 1, "Failed to execute SQL statement: SQL error: cannot create BEFORE trigger on view: V1" + 1, "SQL error: cannot create BEFORE trigger on view: V1" -- </trigger1-1.13> }) @@ -289,7 +289,7 @@ test:do_catchsql_test( end; ]], { -- <trigger1-1.14> - 1, "Failed to execute SQL statement: SQL error: cannot create AFTER trigger on view: V1" + 1, "SQL error: cannot create AFTER trigger on view: V1" -- </trigger1-1.14> }) diff --git a/test/sql-tap/unique.test.lua b/test/sql-tap/unique.test.lua index a9add83..fbd73a6 100755 --- a/test/sql-tap/unique.test.lua +++ b/test/sql-tap/unique.test.lua @@ -70,7 +70,7 @@ test:do_catchsql_test( INSERT INTO t1(a,b,c) VALUES(1,3,4) ]], { -- <unique-1.3> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" + 1, "Duplicate key exists in unique index 'pk_unnamed_T1_1' in space 'T1'" -- </unique-1.3> }) @@ -91,7 +91,7 @@ test:do_catchsql_test( INSERT INTO t1(a,b,c) VALUES(3,2,4) ]], { -- <unique-1.5> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'unique_unnamed_T1_2' in space 'T1'" + 1, "Duplicate key exists in unique index 'unique_unnamed_T1_2' in space 'T1'" -- </unique-1.5> }) @@ -167,7 +167,7 @@ test:do_catchsql_test( INSERT INTO t2 VALUES(3, 1,5); ]], { -- <unique-2.3> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'I2' in space 'T2'" + 1, "Duplicate key exists in unique index 'I2' in space 'T2'" -- </unique-2.3> }) @@ -287,7 +287,7 @@ test:do_catchsql_test( SELECT a,b,c,d FROM t3 ORDER BY a,b,c,d; ]], { -- <unique-3.4> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'unique_unnamed_T3_2' in space 'T3'" + 1, "Duplicate key exists in unique index 'unique_unnamed_T3_2' in space 'T3'" -- </unique-3.4> }) @@ -444,7 +444,7 @@ test:do_catchsql_test( INSERT INTO t5 VALUES(2, 1,2,3,4,5,6); ]], { -- <unique-5.2> - 1, "Failed to execute SQL statement: Duplicate key exists in unique index 'unique_unnamed_T5_2' in space 'T5'" + 1, "Duplicate key exists in unique index 'unique_unnamed_T5_2' in space 'T5'" -- </unique-5.2> }) diff --git a/test/sql/collation.result b/test/sql/collation.result index 6f14d1e..5a931b8 100644 --- a/test/sql/collation.result +++ b/test/sql/collation.result @@ -676,8 +676,7 @@ box.execute("INSERT INTO t3b VALUES ('A');") ... box.execute("INSERT INTO t3b VALUES ('a');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3B_1'' - in space ''T3B''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3B_1' in space 'T3B' ... box.execute("SELECT * FROM t3b;") --- @@ -741,8 +740,7 @@ box.execute("INSERT INTO t3c VALUES ('A');") ... box.execute("INSERT INTO t3c VALUES ('a');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3C_1'' - in space ''T3C''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3C_1' in space 'T3C' ... box.execute("SELECT * FROM t3c;") --- @@ -806,8 +804,7 @@ box.execute("INSERT INTO t3d VALUES ('A');") ... box.execute("INSERT INTO t3d VALUES ('a');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3D_1'' - in space ''T3D''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3D_1' in space 'T3D' ... box.execute("SELECT * FROM t3d;") --- @@ -837,8 +834,7 @@ box.execute("INSERT INTO t3e VALUES ('a');") ... box.execute("INSERT INTO t3e VALUES ('A');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3E_1'' - in space ''T3E''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3E_1' in space 'T3E' ... box.execute("SELECT * FROM t3e;") --- @@ -901,8 +897,7 @@ box.execute("INSERT INTO t3f VALUES ('A');") ... box.execute("INSERT INTO t3f VALUES ('a');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3F_1'' - in space ''T3F''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3F_1' in space 'T3F' ... box.execute("SELECT * FROM t3f;") --- @@ -932,8 +927,7 @@ box.execute("INSERT INTO t3g VALUES ('a');") ... box.execute("INSERT INTO t3g VALUES ('A');") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_T3G_1'' - in space ''T3G''' +- error: Duplicate key exists in unique index 'pk_unnamed_T3G_1' in space 'T3G' ... box.execute("SELECT * FROM t3g;") --- diff --git a/test/sql/errinj.result b/test/sql/errinj.result index ee36a38..75faad1 100644 --- a/test/sql/errinj.result +++ b/test/sql/errinj.result @@ -189,7 +189,7 @@ box.error.injection.set("ERRINJ_WAL_IO", true) ... box.execute("CREATE TRIGGER t1t INSERT ON t1 FOR EACH ROW BEGIN INSERT INTO t2 VALUES (1, 1); END;") --- -- error: 'Failed to execute SQL statement: Failed to write to disk' +- error: Failed to write to disk ... box.execute("CREATE INDEX t1a ON t1(a);") --- @@ -257,7 +257,7 @@ box.error.injection.set("ERRINJ_WAL_IO", true) ... box.execute("DROP TRIGGER t1t;") --- -- error: 'Failed to execute SQL statement: Failed to write to disk' +- error: Failed to write to disk ... box.error.injection.set("ERRINJ_WAL_IO", false) --- @@ -374,7 +374,7 @@ errinj.set("ERRINJ_WAL_IO", true) ... box.execute("ALTER TABLE t3 DROP CONSTRAINT fk1;") --- -- error: 'Failed to execute SQL statement: Failed to write to disk' +- error: Failed to write to disk ... box.execute("INSERT INTO t3 VALUES(1, 1, 3);") --- diff --git a/test/sql/foreign-keys.result b/test/sql/foreign-keys.result index 66eb94b..f3cca5c 100644 --- a/test/sql/foreign-keys.result +++ b/test/sql/foreign-keys.result @@ -181,8 +181,7 @@ t = box.space._fk_constraint:insert(t) -- box.execute("DROP INDEX i1 on t1;") --- -- error: 'Failed to execute SQL statement: Can''t modify space ''T1'': can not drop - a referenced index' +- error: 'Can''t modify space ''T1'': can not drop a referenced index' ... -- Referenced index can't be altered as well, if alter leads to -- rebuild of index (e.g. index still can be renamed). diff --git a/test/sql/insert-unique.result b/test/sql/insert-unique.result index 61b35a3..236046f 100644 --- a/test/sql/insert-unique.result +++ b/test/sql/insert-unique.result @@ -28,14 +28,12 @@ box.execute("INSERT INTO zoobar VALUES (111, 222, 'c3', 444)") -- PK must be unique box.execute("INSERT INTO zoobar VALUES (112, 222, 'c3', 444)") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_ZOOBAR_1'' - in space ''ZOOBAR''' +- error: Duplicate key exists in unique index 'pk_unnamed_ZOOBAR_1' in space 'ZOOBAR' ... -- Unique index must be respected box.execute("INSERT INTO zoobar VALUES (111, 223, 'c3', 444)") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''ZOOBAR2'' - in space ''ZOOBAR''' +- error: Duplicate key exists in unique index 'ZOOBAR2' in space 'ZOOBAR' ... -- Cleanup box.execute("DROP INDEX zoobar2 ON zoobar") diff --git a/test/sql/iproto.result b/test/sql/iproto.result index e734872..73497b4 100644 --- a/test/sql/iproto.result +++ b/test/sql/iproto.result @@ -437,8 +437,7 @@ future1:wait_result() future2:wait_result() --- - null -- 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_TEST_1'' - in space ''TEST''' +- Duplicate key exists in unique index 'pk_unnamed_TEST_1' in space 'TEST' ... future3:wait_result() --- diff --git a/test/sql/persistency.result b/test/sql/persistency.result index 3f85725..3508a22 100644 --- a/test/sql/persistency.result +++ b/test/sql/persistency.result @@ -31,8 +31,7 @@ box.execute("INSERT INTO foobar VALUES (1000, 'foobar')") ... box.execute("INSERT INTO foobar VALUES (1, 'duplicate')") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_FOOBAR_1'' - in space ''FOOBAR''' +- error: Duplicate key exists in unique index 'pk_unnamed_FOOBAR_1' in space 'FOOBAR' ... -- simple select box.execute("SELECT bar, foo, 42, 'awesome' FROM foobar") @@ -416,8 +415,7 @@ box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"") -- prove barfoo2 still exists box.execute("INSERT INTO barfoo VALUES ('xfoo', 1)") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_BARFOO_1'' - in space ''BARFOO''' +- error: Duplicate key exists in unique index 'pk_unnamed_BARFOO_1' in space 'BARFOO' ... box.execute("SELECT * FROM barfoo") --- diff --git a/test/sql/transition.result b/test/sql/transition.result index dec5474..6f5e763 100644 --- a/test/sql/transition.result +++ b/test/sql/transition.result @@ -28,8 +28,7 @@ box.execute("INSERT INTO foobar VALUES (1000, 'foobar')") ... box.execute("INSERT INTO foobar VALUES (1, 'duplicate')") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_FOOBAR_1'' - in space ''FOOBAR''' +- error: Duplicate key exists in unique index 'pk_unnamed_FOOBAR_1' in space 'FOOBAR' ... -- simple select box.execute("SELECT bar, foo, 42, 'awesome' FROM foobar") @@ -312,8 +311,7 @@ box.execute("INSERT INTO barfoo VALUES ('foobar', 1000)") -- prove barfoo2 was created box.execute("INSERT INTO barfoo VALUES ('xfoo', 1)") --- -- error: 'Failed to execute SQL statement: Duplicate key exists in unique index ''pk_unnamed_BARFOO_1'' - in space ''BARFOO''' +- error: Duplicate key exists in unique index 'pk_unnamed_BARFOO_1' in space 'BARFOO' ... box.execute("SELECT foo, bar FROM barfoo") --- diff --git a/test/sql/triggers.result b/test/sql/triggers.result index 77b88f4..16df1fb 100644 --- a/test/sql/triggers.result +++ b/test/sql/triggers.result @@ -480,7 +480,7 @@ space_id = box.space.T1.id ... box.execute("CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW WHEN new.a = ? BEGIN SELECT 1; END;") --- -- error: 'Failed to execute SQL statement: bindings are not allowed in DDL' +- error: bindings are not allowed in DDL ... tuple = {"TR1", space_id, {sql = [[CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW WHEN new.a = ? BEGIN SELECT 1; END;]]}} --- -- 2.7.4
next prev parent reply other threads:[~2019-05-05 12:17 UTC|newest] Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-05-05 12:17 [tarantool-patches] [PATCH v1 00/12] sql: set errors in VDBE using diag_set() imeevma 2019-05-05 12:17 ` imeevma [this message] 2019-05-15 13:18 ` [tarantool-patches] Re: [PATCH v1 01/12] sql: remove errors SQL_TARANTOOL_*_FAIL n.pettik 2019-05-25 9:16 ` Imeev Mergen 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 02/12] sql: remove error ER_SQL imeevma 2019-05-15 13:18 ` [tarantool-patches] " n.pettik 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 03/12] sql: rework diag_set() in OP_Halt imeevma 2019-05-15 13:18 ` [tarantool-patches] " n.pettik 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 04/12] sql: make SQL_TARANTOOL_ERROR the only errcode of OP_Halt imeevma 2019-05-15 13:18 ` [tarantool-patches] " n.pettik 2019-05-25 9:18 ` Imeev Mergen 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 05/12] sql: remove error SQL_INTERRUPT imeevma 2019-05-15 13:18 ` [tarantool-patches] " n.pettik 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 06/12] sql: remove error SQL_MISMATCH imeevma 2019-05-15 13:19 ` [tarantool-patches] " n.pettik 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 07/12] sql: set errors in VDBE using diag_set() imeevma 2019-05-15 13:26 ` [tarantool-patches] " n.pettik 2019-05-25 10:24 ` Mergen Imeev 2019-05-25 10:36 ` Imeev Mergen 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 08/12] sql: remove field zErrMsg from struct Vdbe imeevma 2019-05-15 13:30 ` [tarantool-patches] " n.pettik 2019-05-25 9:25 ` Imeev Mergen 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 09/12] sql: remove field pErr from struct sql imeevma 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 10/12] sql: remove field errCode " imeevma 2019-05-15 13:32 ` [tarantool-patches] " n.pettik 2019-05-25 9:25 ` Imeev Mergen 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 11/12] sql: remove sqlError() and remove sqlErrorWithMsg() imeevma 2019-05-05 12:17 ` [tarantool-patches] [PATCH v1 12/12] sql: use diag_set() to set an error in SQL functions imeevma 2019-05-15 14:12 ` [tarantool-patches] " n.pettik 2019-05-25 9:45 ` Mergen Imeev 2019-05-25 10:36 ` Imeev Mergen
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=4e95d48acff0665630f766d394a36763582ef00b.1557056617.git.imeevma@gmail.com \ --to=imeevma@tarantool.org \ --cc=korablev@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v1 01/12] sql: remove errors SQL_TARANTOOL_*_FAIL' \ /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