fix: memory issue
This commit is contained in:
parent
c9656d3f77
commit
b4b9a12d61
|
@ -373,6 +373,7 @@ static int32_t buildSingleTableScanOperatorParam(SOperatorParam** ppRes, int32_t
|
||||||
taosArrayPush(pUidList, pUid);
|
taosArrayPush(pUidList, pUid);
|
||||||
|
|
||||||
int32_t code = buildTableScanOperatorParam(ppRes, pUidList, QUERY_NODE_PHYSICAL_PLAN_TABLE_SCAN, true);
|
int32_t code = buildTableScanOperatorParam(ppRes, pUidList, QUERY_NODE_PHYSICAL_PLAN_TABLE_SCAN, true);
|
||||||
|
taosArrayDestroy(pUidList);
|
||||||
if (code) {
|
if (code) {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,8 +121,8 @@ static void freeGcBlockInList(void* p) {
|
||||||
|
|
||||||
static void freeSGcDownstreamCtx(SGcDownstreamCtx* pCtx) {
|
static void freeSGcDownstreamCtx(SGcDownstreamCtx* pCtx) {
|
||||||
taosArrayDestroy(pCtx->pNewGrpList);
|
taosArrayDestroy(pCtx->pNewGrpList);
|
||||||
tSimpleHashCleanup(pCtx->pVgTbHash);
|
|
||||||
taosHashCleanup(pCtx->pGrpHash);
|
taosHashCleanup(pCtx->pGrpHash);
|
||||||
|
tSimpleHashCleanup(pCtx->pVgTbHash);
|
||||||
|
|
||||||
taosArrayDestroyEx(pCtx->pFreeBlock, freeGcBlockInList);
|
taosArrayDestroyEx(pCtx->pFreeBlock, freeGcBlockInList);
|
||||||
taosHashCleanup(pCtx->pSessions);
|
taosHashCleanup(pCtx->pSessions);
|
||||||
|
@ -1180,7 +1180,7 @@ static int32_t initGroupCacheExecInfo(SOperatorInfo* pOperator) {
|
||||||
|
|
||||||
static void freeRemoveGroupCacheData(void* p) {
|
static void freeRemoveGroupCacheData(void* p) {
|
||||||
SGroupCacheData* pGroup = p;
|
SGroupCacheData* pGroup = p;
|
||||||
if (pGroup->vgId > 0) {
|
if (pGroup->vgId > 0 && pGroup->needCache) {
|
||||||
SGcFileCacheCtx* pFileCtx = &pGroup->pVgCtx->fileCtx;
|
SGcFileCacheCtx* pFileCtx = &pGroup->pVgCtx->fileCtx;
|
||||||
if (pGroup->fileId >= 0) {
|
if (pGroup->fileId >= 0) {
|
||||||
SGroupCacheFileInfo* pFileInfo = taosHashGet(pFileCtx->pCacheFile, &pGroup->fileId, sizeof(pGroup->fileId));
|
SGroupCacheFileInfo* pFileInfo = taosHashGet(pFileCtx->pCacheFile, &pGroup->fileId, sizeof(pGroup->fileId));
|
||||||
|
|
|
@ -754,6 +754,7 @@ int32_t optrDefaultNotifyFn(struct SOperatorInfo* pOperator, SOperatorParam* pPa
|
||||||
if (TSDB_CODE_SUCCESS != code) {
|
if (TSDB_CODE_SUCCESS != code) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
pOperator->pDownstreamNotifyParams[i] = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1026,7 +1026,7 @@ query_specification(A) ::=
|
||||||
%type hint_opt { SQueryHint }
|
%type hint_opt { SQueryHint }
|
||||||
%destructor hint_opt { }
|
%destructor hint_opt { }
|
||||||
hint_opt(A) ::= . { A.withHint = false; }
|
hint_opt(A) ::= . { A.withHint = false; }
|
||||||
hint_opt(A) ::= NO_BATCH_SCAN. { A.withHint = true; A.batchScan = false; }
|
hint_opt(A) ::= NO_BATCH_SCAN NK_LP NK_RP. { A.withHint = true; A.batchScan = false; }
|
||||||
|
|
||||||
%type set_quantifier_opt { bool }
|
%type set_quantifier_opt { bool }
|
||||||
%destructor set_quantifier_opt { }
|
%destructor set_quantifier_opt { }
|
||||||
|
|
|
@ -3338,7 +3338,7 @@ static int32_t stbJoinOptCreateGroupCacheNode(SNodeList* pChildren, SLogicNode**
|
||||||
//pGrpCache->node.dynamicOp = true;
|
//pGrpCache->node.dynamicOp = true;
|
||||||
pGrpCache->grpColsMayBeNull = false;
|
pGrpCache->grpColsMayBeNull = false;
|
||||||
pGrpCache->grpByUid = true;
|
pGrpCache->grpByUid = true;
|
||||||
pGrpCache->batchFetch = true;
|
pGrpCache->batchFetch = false;
|
||||||
pGrpCache->node.pChildren = pChildren;
|
pGrpCache->node.pChildren = pChildren;
|
||||||
pGrpCache->node.pTargets = nodesMakeList();
|
pGrpCache->node.pTargets = nodesMakeList();
|
||||||
if (NULL == pGrpCache->node.pTargets) {
|
if (NULL == pGrpCache->node.pTargets) {
|
||||||
|
@ -3444,7 +3444,7 @@ static int32_t stbJoinOptCreateDynQueryCtrlNode(SLogicNode* pPrev, SLogicNode* p
|
||||||
}
|
}
|
||||||
|
|
||||||
pDynCtrl->qType = DYN_QTYPE_STB_HASH;
|
pDynCtrl->qType = DYN_QTYPE_STB_HASH;
|
||||||
pDynCtrl->stbJoin.batchFetch = true;
|
pDynCtrl->stbJoin.batchFetch = false;
|
||||||
memcpy(pDynCtrl->stbJoin.srcScan, srcScan, sizeof(pDynCtrl->stbJoin.srcScan));
|
memcpy(pDynCtrl->stbJoin.srcScan, srcScan, sizeof(pDynCtrl->stbJoin.srcScan));
|
||||||
|
|
||||||
if (TSDB_CODE_SUCCESS == code) {
|
if (TSDB_CODE_SUCCESS == code) {
|
||||||
|
|
Loading…
Reference in New Issue