[tarantool-patches] [PATCH v1 13/28] sql: remove SQL_MISUSE errcode

imeevma at tarantool.org imeevma at tarantool.org
Mon Jun 10 16:56:46 MSK 2019


Removing this error code is part of getting rid of the SQL error
system.
---
 src/box/sql/malloc.c  | 56 ---------------------------------------------------
 src/box/sql/sqlInt.h  | 13 ------------
 src/box/sql/status.c  | 33 ------------------------------
 src/box/sql/vdbeapi.c |  6 +-----
 4 files changed, 1 insertion(+), 107 deletions(-)

diff --git a/src/box/sql/malloc.c b/src/box/sql/malloc.c
index a7549db..8830cc8 100644
--- a/src/box/sql/malloc.c
+++ b/src/box/sql/malloc.c
@@ -174,38 +174,6 @@ static SQL_WSD struct Mem0Global {
 
 #define mem0 GLOBAL(struct Mem0Global, mem0)
 
-
-/*
- * Set the soft heap-size limit for the library. Passing a zero or
- * negative value indicates no limit.
- */
-sql_int64
-sql_soft_heap_limit64(sql_int64 n)
-{
-	sql_int64 priorLimit;
-	sql_int64 excess;
-	sql_int64 nUsed;
-	priorLimit = mem0.alarmThreshold;
-	if (n < 0) {
-		return priorLimit;
-	}
-	mem0.alarmThreshold = n;
-	nUsed = sqlStatusValue(SQL_STATUS_MEMORY_USED);
-	mem0.nearlyFull = (n > 0 && n <= nUsed);
-	excess = sql_memory_used() - n;
-	if (excess > 0)
-		sql_release_memory((int)(excess & 0x7fffffff));
-	return priorLimit;
-}
-
-void
-sql_soft_heap_limit(int n)
-{
-	if (n < 0)
-		n = 0;
-	sql_soft_heap_limit64(n);
-}
-
 /*
  * Initialize the memory allocation subsystem.
  */
@@ -263,30 +231,6 @@ sqlMallocEnd(void)
 }
 
 /*
- * Return the amount of memory currently checked out.
- */
-sql_int64
-sql_memory_used(void)
-{
-	sql_int64 res, mx;
-	sql_status64(SQL_STATUS_MEMORY_USED, &res, &mx, 0);
-	return res;
-}
-
-/*
- * Return the maximum amount of memory that has ever been
- * checked out since either the beginning of this process
- * or since the most recent reset.
- */
-sql_int64
-sql_memory_highwater(int resetFlag)
-{
-	sql_int64 res, mx;
-	sql_status64(SQL_STATUS_MEMORY_USED, &res, &mx, resetFlag);
-	return mx;
-}
-
-/*
  * Trigger the alarm
  */
 static void
diff --git a/src/box/sql/sqlInt.h b/src/box/sql/sqlInt.h
index 345b0a4..8b63c40 100644
--- a/src/box/sql/sqlInt.h
+++ b/src/box/sql/sqlInt.h
@@ -370,8 +370,6 @@ enum sql_ret_code {
 	SQL_TOOBIG,
 	/** Abort due to constraint violation. */
 	SQL_CONSTRAINT,
-	/** Library used incorrectly. */
-	SQL_MISUSE,
 	/** 2nd parameter to sql_bind out of range. */
 	SQL_RANGE,
 	SQL_TARANTOOL_ERROR,
@@ -700,9 +698,6 @@ sql_os_end(void);
 #define SQL_STATUS_SCRATCH_SIZE         8
 #define SQL_STATUS_MALLOC_COUNT         9
 
-sql_int64
-sql_memory_used(void);
-
 int
 sql_create_function_v2(sql * db,
 			   const char *zFunctionName,
@@ -761,11 +756,6 @@ sql_vfs_find(const char *zVfsName);
 #define SQL_TESTCTRL_SORTER_MMAP             24
 #define SQL_TESTCTRL_LAST                    24
 
-int
-sql_status64(int op, sql_int64 * pCurrent,
-		 sql_int64 * pHighwater,
-		 int resetFlag);
-
 
 typedef struct sql_io_methods sql_io_methods;
 struct sql_io_methods {
@@ -805,9 +795,6 @@ struct sql_io_methods {
 int
 sql_os_init(void);
 
-sql_int64
-sql_soft_heap_limit64(sql_int64 N);
-
 int
 sql_limit(sql *, int id, int newVal);
 
diff --git a/src/box/sql/status.c b/src/box/sql/status.c
index 2d4eae0..10be3d9 100644
--- a/src/box/sql/status.c
+++ b/src/box/sql/status.c
@@ -127,39 +127,6 @@ sqlStatusHighwater(int op, int X)
 }
 
 /*
- * Query status information.
- */
-int
-sql_status64(int op,
-		 sql_int64 * pCurrent,
-		 sql_int64 * pHighwater, int resetFlag)
-{
-	wsdStatInit;
-	if (op < 0 || op >= ArraySize(wsdStat.nowValue)) {
-		return SQL_MISUSE;
-	}
-	*pCurrent = wsdStat.nowValue[op];
-	*pHighwater = wsdStat.mxValue[op];
-	if (resetFlag) {
-		wsdStat.mxValue[op] = wsdStat.nowValue[op];
-	}
-	return 0;
-}
-
-int
-sql_status(int op, int *pCurrent, int *pHighwater, int resetFlag)
-{
-	sql_int64 iCur = 0, iHwtr = 0;
-	int rc;
-	rc = sql_status64(op, &iCur, &iHwtr, resetFlag);
-	if (rc == 0) {
-		*pCurrent = (int)iCur;
-		*pHighwater = (int)iHwtr;
-	}
-	return rc;
-}
-
-/*
  * Query status information for a single database connection
  */
 int
diff --git a/src/box/sql/vdbeapi.c b/src/box/sql/vdbeapi.c
index f3f7f48..7ac3211 100644
--- a/src/box/sql/vdbeapi.c
+++ b/src/box/sql/vdbeapi.c
@@ -966,11 +966,7 @@ vdbeUnbind(Vdbe * p, int i)
 {
 	Mem *pVar;
 	assert(p != NULL);
-	if (p->magic != VDBE_MAGIC_RUN || p->pc >= 0) {
-		sql_log(SQL_MISUSE,
-			    "bind on a busy prepared statement: [%s]", p->zSql);
-		return SQL_MISUSE;
-	}
+	assert(p->magic == VDBE_MAGIC_RUN && p->pc < 0);
 	if (i < 1 || i > p->nVar) {
 		return SQL_RANGE;
 	}
-- 
2.7.4





More information about the Tarantool-patches mailing list