[tarantool-patches] [PATCH v1 08/12] sql: remove field zErrMsg from struct Vdbe
imeevma at tarantool.org
imeevma at tarantool.org
Sun May 5 15:17:15 MSK 2019
This field become unused and should be removed.
---
src/box/sql/vdbeInt.h | 1 -
src/box/sql/vdbeaux.c | 29 ++++-------------------------
2 files changed, 4 insertions(+), 26 deletions(-)
diff --git a/src/box/sql/vdbeInt.h b/src/box/sql/vdbeInt.h
index b655b5a..de9dbd6 100644
--- a/src/box/sql/vdbeInt.h
+++ b/src/box/sql/vdbeInt.h
@@ -404,7 +404,6 @@ struct Vdbe {
Mem **apArg; /* Arguments to currently executing user function */
Mem *aColName; /* Column names to return */
Mem *pResultSet; /* Pointer to an array of results */
- char *zErrMsg; /* Error message written here */
VdbeCursor **apCsr; /* One element of this array for each open cursor */
Mem *aVar; /* Values for the OP_Variable opcode. */
/**
diff --git a/src/box/sql/vdbeaux.c b/src/box/sql/vdbeaux.c
index 48c2a81..300a44b 100644
--- a/src/box/sql/vdbeaux.c
+++ b/src/box/sql/vdbeaux.c
@@ -1966,7 +1966,6 @@ closeCursorsAndFree(Vdbe * p)
static void
Cleanup(Vdbe * p)
{
- sql *db = p->db;
#ifdef SQL_DEBUG
/* Execute assert() statements to ensure that the Vdbe.apCsr[] and
@@ -1982,8 +1981,6 @@ Cleanup(Vdbe * p)
}
#endif
- sqlDbFree(db, p->zErrMsg);
- p->zErrMsg = 0;
p->pResultSet = 0;
}
@@ -2326,8 +2323,6 @@ sqlVdbeHalt(Vdbe * p)
if (p->rc == SQL_OK
|| (p->rc & 0xff) == SQL_CONSTRAINT) {
p->rc = rc;
- sqlDbFree(db, p->zErrMsg);
- p->zErrMsg = 0;
}
closeCursorsAndFree(p);
sqlRollbackAll(p);
@@ -2390,24 +2385,13 @@ sqlVdbeTransferError(Vdbe * p)
{
sql *db = p->db;
int rc = p->rc;
- if (p->zErrMsg) {
- db->bBenignMalloc++;
- sqlBeginBenignMalloc();
- if (db->pErr == 0)
- db->pErr = sqlValueNew(db);
- sqlValueSetStr(db->pErr, -1, p->zErrMsg, SQL_TRANSIENT);
- sqlEndBenignMalloc();
- db->bBenignMalloc--;
- db->errCode = rc;
- } else {
- sqlError(db, rc);
- }
+ sqlError(db, rc);
return rc;
}
/*
* Clean up a VDBE after execution but do not delete the VDBE just yet.
- * Write any error messages into *pzErrMsg. Return the result code.
+ * Return the result code.
*
* After this routine is run, the VDBE should be ready to be executed
* again.
@@ -2435,8 +2419,6 @@ sqlVdbeReset(Vdbe * p)
*/
if (p->pc >= 0) {
sqlVdbeTransferError(p);
- sqlDbFree(db, p->zErrMsg);
- p->zErrMsg = 0;
if (p->runOnlyOnce)
p->expired = 1;
} else if (p->rc && p->expired) {
@@ -2444,10 +2426,7 @@ sqlVdbeReset(Vdbe * p)
* to sql_step(). For consistency (since sql_step() was
* called), set the database error in this case as well.
*/
- sqlErrorWithMsg(db, p->rc, p->zErrMsg ? "%s" : 0,
- p->zErrMsg);
- sqlDbFree(db, p->zErrMsg);
- p->zErrMsg = 0;
+ sqlErrorWithMsg(db, p->rc, NULL);
}
/* Reclaim all memory used by the VDBE
@@ -2501,7 +2480,7 @@ sqlVdbeReset(Vdbe * p)
/*
* Clean up and delete a VDBE after execution. Return an integer which is
- * the result code. Write any error message text into *pzErrMsg.
+ * the result code.
*/
int
sqlVdbeFinalize(Vdbe * p)
--
2.7.4
More information about the Tarantool-patches
mailing list