fix(query):check return code
This commit is contained in:
parent
26f21cf071
commit
c8dd0e90a9
|
@ -1261,13 +1261,16 @@ static int32_t blockDataAssign(SColumnInfoData* pCols, const SSDataBlock* pDataB
|
||||||
return TSDB_CODE_SUCCESS;
|
return TSDB_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
static SColumnInfoData* createHelpColInfoData(const SSDataBlock* pDataBlock) {
|
static int32_t createHelpColInfoData(const SSDataBlock* pDataBlock, SColumnInfoData** ppCols) {
|
||||||
|
*ppCols = NULL;
|
||||||
|
|
||||||
|
int32_t code = 0;
|
||||||
int32_t rows = pDataBlock->info.capacity;
|
int32_t rows = pDataBlock->info.capacity;
|
||||||
size_t numOfCols = taosArrayGetSize(pDataBlock->pDataBlock);
|
size_t numOfCols = taosArrayGetSize(pDataBlock->pDataBlock);
|
||||||
|
|
||||||
SColumnInfoData* pCols = taosMemoryCalloc(numOfCols, sizeof(SColumnInfoData));
|
SColumnInfoData* pCols = taosMemoryCalloc(numOfCols, sizeof(SColumnInfoData));
|
||||||
if (pCols == NULL) {
|
if (pCols == NULL) {
|
||||||
return NULL;
|
return terrno;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int32_t i = 0; i < numOfCols; ++i) {
|
for (int32_t i = 0; i < numOfCols; ++i) {
|
||||||
|
@ -1280,8 +1283,11 @@ static SColumnInfoData* createHelpColInfoData(const SSDataBlock* pDataBlock) {
|
||||||
if (IS_VAR_DATA_TYPE(pCols[i].info.type)) {
|
if (IS_VAR_DATA_TYPE(pCols[i].info.type)) {
|
||||||
pCols[i].varmeta.offset = taosMemoryCalloc(rows, sizeof(int32_t));
|
pCols[i].varmeta.offset = taosMemoryCalloc(rows, sizeof(int32_t));
|
||||||
pCols[i].pData = taosMemoryCalloc(1, pColInfoData->varmeta.length);
|
pCols[i].pData = taosMemoryCalloc(1, pColInfoData->varmeta.length);
|
||||||
if (pCols[i].varmeta.offset == NULL) {
|
if (pCols[i].varmeta.offset == NULL || pCols[i].pData == NULL) {
|
||||||
return NULL;
|
code = terrno;
|
||||||
|
taosMemoryFree(pCols[i].varmeta.offset);
|
||||||
|
taosMemoryFree(pCols[i].pData);
|
||||||
|
goto _error;
|
||||||
}
|
}
|
||||||
|
|
||||||
pCols[i].varmeta.length = pColInfoData->varmeta.length;
|
pCols[i].varmeta.length = pColInfoData->varmeta.length;
|
||||||
|
@ -1290,12 +1296,20 @@ static SColumnInfoData* createHelpColInfoData(const SSDataBlock* pDataBlock) {
|
||||||
pCols[i].nullbitmap = taosMemoryCalloc(1, BitmapLen(rows));
|
pCols[i].nullbitmap = taosMemoryCalloc(1, BitmapLen(rows));
|
||||||
pCols[i].pData = taosMemoryCalloc(rows, pCols[i].info.bytes);
|
pCols[i].pData = taosMemoryCalloc(rows, pCols[i].info.bytes);
|
||||||
if (pCols[i].nullbitmap == NULL || pCols[i].pData == NULL) {
|
if (pCols[i].nullbitmap == NULL || pCols[i].pData == NULL) {
|
||||||
return NULL;
|
code = terrno;
|
||||||
|
taosMemoryFree(pCols[i].nullbitmap);
|
||||||
|
taosMemoryFree(pCols[i].pData);
|
||||||
|
goto _error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return pCols;
|
*ppCols = pCols;
|
||||||
|
return code;
|
||||||
|
|
||||||
|
_error:
|
||||||
|
taosMemoryFree(pCols);
|
||||||
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void copyBackToBlock(SSDataBlock* pDataBlock, SColumnInfoData* pCols) {
|
static void copyBackToBlock(SSDataBlock* pDataBlock, SColumnInfoData* pCols) {
|
||||||
|
@ -1423,16 +1437,15 @@ int32_t blockDataSort(SSDataBlock* pDataBlock, SArray* pOrderInfo) {
|
||||||
|
|
||||||
int64_t p1 = taosGetTimestampUs();
|
int64_t p1 = taosGetTimestampUs();
|
||||||
|
|
||||||
SColumnInfoData* pCols = createHelpColInfoData(pDataBlock);
|
SColumnInfoData* pCols = NULL;
|
||||||
if (pCols == NULL) {
|
int32_t code = createHelpColInfoData(pDataBlock, &pCols);
|
||||||
|
if (code != 0) {
|
||||||
destroyTupleIndex(index);
|
destroyTupleIndex(index);
|
||||||
terrno = TSDB_CODE_OUT_OF_MEMORY;
|
return code;
|
||||||
return terrno;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int64_t p2 = taosGetTimestampUs();
|
int64_t p2 = taosGetTimestampUs();
|
||||||
|
code = blockDataAssign(pCols, pDataBlock, index);
|
||||||
int32_t code = blockDataAssign(pCols, pDataBlock, index);
|
|
||||||
if (code) {
|
if (code) {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
|
@ -349,6 +349,9 @@ int32_t doScanWalForAllTasks(SStreamMeta* pStreamMeta, bool* pScanIdle) {
|
||||||
streamMetaWLock(pStreamMeta);
|
streamMetaWLock(pStreamMeta);
|
||||||
pTaskList = taosArrayDup(pStreamMeta->pTaskList, NULL);
|
pTaskList = taosArrayDup(pStreamMeta->pTaskList, NULL);
|
||||||
streamMetaWUnLock(pStreamMeta);
|
streamMetaWUnLock(pStreamMeta);
|
||||||
|
if (pTaskList == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
tqDebug("vgId:%d start to check wal to extract new submit block for %d tasks", vgId, numOfTasks);
|
tqDebug("vgId:%d start to check wal to extract new submit block for %d tasks", vgId, numOfTasks);
|
||||||
|
|
||||||
|
|
|
@ -989,6 +989,10 @@ int32_t addSingleExchangeSource(SOperatorInfo* pOperator, SExchangeOperatorBasic
|
||||||
dataInfo.taskId = pExchangeInfo->pTaskId;
|
dataInfo.taskId = pExchangeInfo->pTaskId;
|
||||||
dataInfo.index = pIdx->srcIdx;
|
dataInfo.index = pIdx->srcIdx;
|
||||||
dataInfo.pSrcUidList = taosArrayDup(pBasicParam->uidList, NULL);
|
dataInfo.pSrcUidList = taosArrayDup(pBasicParam->uidList, NULL);
|
||||||
|
if (dataInfo.pSrcUidList == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
dataInfo.srcOpType = pBasicParam->srcOpType;
|
dataInfo.srcOpType = pBasicParam->srcOpType;
|
||||||
dataInfo.tableSeq = pBasicParam->tableSeq;
|
dataInfo.tableSeq = pBasicParam->tableSeq;
|
||||||
|
|
||||||
|
@ -1007,6 +1011,10 @@ int32_t addSingleExchangeSource(SOperatorInfo* pOperator, SExchangeOperatorBasic
|
||||||
pDataInfo->status = EX_SOURCE_DATA_NOT_READY;
|
pDataInfo->status = EX_SOURCE_DATA_NOT_READY;
|
||||||
}
|
}
|
||||||
pDataInfo->pSrcUidList = taosArrayDup(pBasicParam->uidList, NULL);
|
pDataInfo->pSrcUidList = taosArrayDup(pBasicParam->uidList, NULL);
|
||||||
|
if (pDataInfo->pSrcUidList == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
pDataInfo->srcOpType = pBasicParam->srcOpType;
|
pDataInfo->srcOpType = pBasicParam->srcOpType;
|
||||||
pDataInfo->tableSeq = pBasicParam->tableSeq;
|
pDataInfo->tableSeq = pBasicParam->tableSeq;
|
||||||
}
|
}
|
||||||
|
|
|
@ -826,6 +826,8 @@ int32_t getColInfoResultForGroupby(void* pVnode, SNodeList* group, STableListInf
|
||||||
|
|
||||||
if (tsTagFilterCache) {
|
if (tsTagFilterCache) {
|
||||||
tableList = taosArrayDup(pTableListInfo->pTableList, NULL);
|
tableList = taosArrayDup(pTableListInfo->pTableList, NULL);
|
||||||
|
QUERY_CHECK_NULL(tableList, code, lino, end, terrno);
|
||||||
|
|
||||||
code = pAPI->metaFn.metaPutTbGroupToCache(pVnode, pTableListInfo->idInfo.suid, context.digest,
|
code = pAPI->metaFn.metaPutTbGroupToCache(pVnode, pTableListInfo->idInfo.suid, context.digest,
|
||||||
tListLen(context.digest), tableList,
|
tListLen(context.digest), tableList,
|
||||||
taosArrayGetSize(tableList) * sizeof(STableKeyInfo));
|
taosArrayGetSize(tableList) * sizeof(STableKeyInfo));
|
||||||
|
|
|
@ -285,6 +285,10 @@ int32_t tsortCreateSortHandle(SArray* pSortInfo, int32_t type, int32_t pageSize,
|
||||||
pSortHandle->pageSize = pageSize;
|
pSortHandle->pageSize = pageSize;
|
||||||
pSortHandle->numOfPages = numOfPages;
|
pSortHandle->numOfPages = numOfPages;
|
||||||
pSortHandle->pSortInfo = taosArrayDup(pSortInfo, NULL);
|
pSortHandle->pSortInfo = taosArrayDup(pSortInfo, NULL);
|
||||||
|
if (pSortHandle->pSortInfo == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
pSortHandle->loops = 0;
|
pSortHandle->loops = 0;
|
||||||
|
|
||||||
pSortHandle->pqMaxTupleLength = pqMaxTupleLength;
|
pSortHandle->pqMaxTupleLength = pqMaxTupleLength;
|
||||||
|
@ -1708,6 +1712,9 @@ int32_t tsortSetSortByRowId(SSortHandle* pHandle, int32_t extRowsMemSize) {
|
||||||
pHandle->extRowBytes = blockDataGetRowSize(pHandle->pDataBlock) + taosArrayGetSize(pHandle->pDataBlock->pDataBlock) + sizeof(int32_t);
|
pHandle->extRowBytes = blockDataGetRowSize(pHandle->pDataBlock) + taosArrayGetSize(pHandle->pDataBlock->pDataBlock) + sizeof(int32_t);
|
||||||
pHandle->extRowsMemSize = extRowsMemSize;
|
pHandle->extRowsMemSize = extRowsMemSize;
|
||||||
pHandle->aExtRowsOrders = taosArrayDup(pHandle->pSortInfo, NULL);
|
pHandle->aExtRowsOrders = taosArrayDup(pHandle->pSortInfo, NULL);
|
||||||
|
if (pHandle->aExtRowsOrders == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t code = initRowIdSort(pHandle);
|
int32_t code = initRowIdSort(pHandle);
|
||||||
if (code) {
|
if (code) {
|
||||||
|
|
|
@ -819,10 +819,21 @@ void* streamBackendInit(const char* streamPath, int64_t chkpId, int32_t vgId) {
|
||||||
|
|
||||||
uint32_t dbMemLimit = nextPow2(tsMaxStreamBackendCache) << 20;
|
uint32_t dbMemLimit = nextPow2(tsMaxStreamBackendCache) << 20;
|
||||||
SBackendWrapper* pHandle = taosMemoryCalloc(1, sizeof(SBackendWrapper));
|
SBackendWrapper* pHandle = taosMemoryCalloc(1, sizeof(SBackendWrapper));
|
||||||
|
if (pHandle == NULL) {
|
||||||
|
goto _EXIT;
|
||||||
|
}
|
||||||
|
|
||||||
pHandle->list = tdListNew(sizeof(SCfComparator));
|
pHandle->list = tdListNew(sizeof(SCfComparator));
|
||||||
|
if (pHandle->list == NULL) {
|
||||||
|
goto _EXIT;
|
||||||
|
}
|
||||||
|
|
||||||
(void)taosThreadMutexInit(&pHandle->mutex, NULL);
|
(void)taosThreadMutexInit(&pHandle->mutex, NULL);
|
||||||
(void)taosThreadMutexInit(&pHandle->cfMutex, NULL);
|
(void)taosThreadMutexInit(&pHandle->cfMutex, NULL);
|
||||||
pHandle->cfInst = taosHashInit(64, taosGetDefaultHashFunction(TSDB_DATA_TYPE_BINARY), false, HASH_NO_LOCK);
|
pHandle->cfInst = taosHashInit(64, taosGetDefaultHashFunction(TSDB_DATA_TYPE_BINARY), false, HASH_NO_LOCK);
|
||||||
|
if (pHandle->cfInst == NULL) {
|
||||||
|
goto _EXIT;
|
||||||
|
}
|
||||||
|
|
||||||
rocksdb_env_t* env = rocksdb_create_default_env(); // rocksdb_envoptions_create();
|
rocksdb_env_t* env = rocksdb_create_default_env(); // rocksdb_envoptions_create();
|
||||||
|
|
||||||
|
|
|
@ -1277,10 +1277,13 @@ static int32_t prepareBeforeStartTasks(SStreamMeta* pMeta, SArray** pList, int64
|
||||||
if (pMeta->closeFlag) {
|
if (pMeta->closeFlag) {
|
||||||
streamMetaWUnLock(pMeta);
|
streamMetaWUnLock(pMeta);
|
||||||
stError("vgId:%d vnode is closed, not start check task(s) downstream status", pMeta->vgId);
|
stError("vgId:%d vnode is closed, not start check task(s) downstream status", pMeta->vgId);
|
||||||
return -1;
|
return TSDB_CODE_FAILED;
|
||||||
}
|
}
|
||||||
|
|
||||||
*pList = taosArrayDup(pMeta->pTaskList, NULL);
|
*pList = taosArrayDup(pMeta->pTaskList, NULL);
|
||||||
|
if (*pList == NULL) {
|
||||||
|
return terrno;
|
||||||
|
}
|
||||||
|
|
||||||
taosHashClear(pMeta->startInfo.pReadyTaskSet);
|
taosHashClear(pMeta->startInfo.pReadyTaskSet);
|
||||||
taosHashClear(pMeta->startInfo.pFailedTaskSet);
|
taosHashClear(pMeta->startInfo.pFailedTaskSet);
|
||||||
|
|
|
@ -367,6 +367,9 @@ int32_t createDiskbasedBuf(SDiskbasedBuf** pBuf, int32_t pagesize, int32_t inMem
|
||||||
pPBuf->fileSize = 0;
|
pPBuf->fileSize = 0;
|
||||||
pPBuf->pFree = taosArrayInit(4, sizeof(SFreeListItem));
|
pPBuf->pFree = taosArrayInit(4, sizeof(SFreeListItem));
|
||||||
pPBuf->freePgList = tdListNew(POINTER_BYTES);
|
pPBuf->freePgList = tdListNew(POINTER_BYTES);
|
||||||
|
if (pPBuf->pFree == NULL || pPBuf->freePgList == NULL) {
|
||||||
|
goto _error;
|
||||||
|
}
|
||||||
|
|
||||||
// at least more than 2 pages must be in memory
|
// at least more than 2 pages must be in memory
|
||||||
if (inMemBufSize < pagesize * 2) {
|
if (inMemBufSize < pagesize * 2) {
|
||||||
|
|
Loading…
Reference in New Issue