From 5d976a26a5d8457bc78f667a66385559e017b900 Mon Sep 17 00:00:00 2001 From: dapan1121 <89396746@qq.com> Date: Mon, 25 Jan 2021 17:00:22 +0800 Subject: [PATCH] fix bug --- src/client/src/tscSQLParser.c | 9 ++++++--- src/client/src/tscServer.c | 4 +++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/client/src/tscSQLParser.c b/src/client/src/tscSQLParser.c index 0ccc54ff0d..a23c9b75bb 100644 --- a/src/client/src/tscSQLParser.c +++ b/src/client/src/tscSQLParser.c @@ -921,16 +921,19 @@ int32_t tscSetTableFullName(STableMetaInfo* pTableMetaInfo, SStrToken* pTableNam return invalidSqlErrMsg(tscGetErrorMsgPayload(pCmd), msg1); } } else { // get current DB name first, and then set it into path - char* t = getCurrentDBName(pSql); + char* t = cloneCurrentDBName(pSql); if (strlen(t) == 0) { return TSDB_CODE_TSC_DB_NOT_SELECTED; } code = tNameFromString(&pTableMetaInfo->name, t, T_NAME_ACCT | T_NAME_DB); if (code != 0) { + free(t); return TSDB_CODE_TSC_DB_NOT_SELECTED; } + free(t); + if (pTableName->n >= TSDB_TABLE_NAME_LEN) { return invalidSqlErrMsg(tscGetErrorMsgPayload(pCmd), msg1); } @@ -1244,8 +1247,8 @@ static bool has(SArray* pFieldList, int32_t startIdx, const char* name) { static char* getAccountId(SSqlObj* pSql) { return pSql->pTscObj->acctId; } -static char* getCurrentDBName(SSqlObj* pSql) { - return pSql->pTscObj->db; +static char* cloneCurrentDBName(SSqlObj* pSql) { + return strdup(pSql->pTscObj->db); } /* length limitation, strstr cannot be applied */ diff --git a/src/client/src/tscServer.c b/src/client/src/tscServer.c index 8403876566..1ea19d5198 100644 --- a/src/client/src/tscServer.c +++ b/src/client/src/tscServer.c @@ -2165,7 +2165,9 @@ int tscProcessUseDbRsp(SSqlObj *pSql) { } int tscProcessDropDbRsp(SSqlObj *pSql) { - pSql->pTscObj->db[0] = 0; + //TODO LOCK DB WHEN MODIFY IT + //pSql->pTscObj->db[0] = 0; + taosHashEmpty(tscTableMetaInfo); return 0; } -- GitLab