From 3ec51c77c44ebe810bc3ad314df5bf70014e873a Mon Sep 17 00:00:00 2001 From: 54liuyao <54liuyao> Date: Mon, 12 Aug 2024 18:21:35 +0800 Subject: [PATCH] adj res --- source/libs/executor/src/scanoperator.c | 30 ++++++++++++------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/source/libs/executor/src/scanoperator.c b/source/libs/executor/src/scanoperator.c index 813d984528..f291a2bb49 100644 --- a/source/libs/executor/src/scanoperator.c +++ b/source/libs/executor/src/scanoperator.c @@ -509,7 +509,7 @@ static void freeTableCachedVal(void* param) { taosMemoryFree(pVal); } -static STableCachedVal* createTableCacheVal(const SMetaReader* pMetaReader) { +static int32_t createTableCacheVal(const SMetaReader* pMetaReader, STableCachedVal** ppResVal) { int32_t code = TSDB_CODE_SUCCESS; int32_t lino = 0; STableCachedVal* pVal = taosMemoryMalloc(sizeof(STableCachedVal)); @@ -529,9 +529,10 @@ static STableCachedVal* createTableCacheVal(const SMetaReader* pMetaReader) { _end: if (code != TSDB_CODE_SUCCESS) { qError("%s failed at line %d since %s", __func__, lino, tstrerror(code)); - return NULL; + freeTableCachedVal(pVal); } - return pVal; + (*ppResVal) = pVal; + return code; } // const void *key, size_t keyLen, void *value @@ -581,18 +582,18 @@ int32_t addTagPseudoColumnData(SReadHandle* pHandle, const SExprInfo* pExpr, int code = pHandle->api.metaReaderFn.getEntryGetUidCache(&mr, pBlock->info.id.uid); if (code != TSDB_CODE_SUCCESS) { // when encounter the TSDB_CODE_PAR_TABLE_NOT_EXIST error, we proceed. - if (terrno == TSDB_CODE_PAR_TABLE_NOT_EXIST) { + if (code == TSDB_CODE_PAR_TABLE_NOT_EXIST) { qWarn("failed to get table meta, table may have been dropped, uid:0x%" PRIx64 ", code:%s, %s", - pBlock->info.id.uid, tstrerror(terrno), idStr); + pBlock->info.id.uid, tstrerror(code), idStr); // append null value before return to caller, since the caller will ignore this error code and proceed doSetNullValue(pBlock, pExpr, numOfExpr); } else { - qError("failed to get table meta, uid:0x%" PRIx64 ", code:%s, %s", pBlock->info.id.uid, tstrerror(terrno), + qError("failed to get table meta, uid:0x%" PRIx64 ", code:%s, %s", pBlock->info.id.uid, tstrerror(code), idStr); } pHandle->api.metaReaderFn.clearReader(&mr); - return terrno; + return code; } pHandle->api.metaReaderFn.readerReleaseLock(&mr); @@ -609,25 +610,24 @@ int32_t addTagPseudoColumnData(SReadHandle* pHandle, const SExprInfo* pExpr, int pHandle->api.metaReaderFn.initReader(&mr, pHandle->vnode, META_READER_LOCK, &pHandle->api.metaFn); code = pHandle->api.metaReaderFn.getEntryGetUidCache(&mr, pBlock->info.id.uid); if (code != TSDB_CODE_SUCCESS) { - if (terrno == TSDB_CODE_PAR_TABLE_NOT_EXIST) { + if (code == TSDB_CODE_PAR_TABLE_NOT_EXIST) { qWarn("failed to get table meta, table may have been dropped, uid:0x%" PRIx64 ", code:%s, %s", - pBlock->info.id.uid, tstrerror(terrno), idStr); + pBlock->info.id.uid, tstrerror(code), idStr); // append null value before return to caller, since the caller will ignore this error code and proceed doSetNullValue(pBlock, pExpr, numOfExpr); } else { - qError("failed to get table meta, uid:0x%" PRIx64 ", code:%s, %s", pBlock->info.id.uid, tstrerror(terrno), + qError("failed to get table meta, uid:0x%" PRIx64 ", code:%s, %s", pBlock->info.id.uid, tstrerror(code), idStr); } pHandle->api.metaReaderFn.clearReader(&mr); - return terrno; + return code; } pHandle->api.metaReaderFn.readerReleaseLock(&mr); - STableCachedVal* pVal = createTableCacheVal(&mr); - if(!pVal) { - return terrno; - } + STableCachedVal* pVal = NULL; + code = createTableCacheVal(&mr, &pVal); + QUERY_CHECK_CODE(code, lino, _end); val = *pVal; freeReader = true;