[td-2859] refactor and fix memory leaks.

This commit is contained in:
Haojun Liao 2021-04-20 17:08:27 +08:00
parent 70a02863a7
commit 4142ec3eb8
2 changed files with 7 additions and 2 deletions

View File

@ -4409,6 +4409,11 @@ SArray* getResultGroupCheckColumns(SQueryAttr* pQuery) {
return pOrderColumns;
}
static void destroyGlobalAggOperatorInfo(void* param, int32_t numOfOutput) {
SMultiwayMergeInfo *pInfo = (SMultiwayMergeInfo*) param;
destroyBasicOperatorInfo(&pInfo->binfo, numOfOutput);
}
SOperatorInfo* createGlobalAggregateOperatorInfo(SQueryRuntimeEnv* pRuntimeEnv, SOperatorInfo* upstream,
SExprInfo* pExpr, int32_t numOfOutput, void* param) {
SMultiwayMergeInfo* pInfo = calloc(1, sizeof(SMultiwayMergeInfo));
@ -4471,7 +4476,7 @@ SOperatorInfo* createGlobalAggregateOperatorInfo(SQueryRuntimeEnv* pRuntimeEnv,
pOperator->pRuntimeEnv = pRuntimeEnv;
pOperator->exec = doGlobalAggregate;
pOperator->cleanup = destroyBasicOperatorInfo;
pOperator->cleanup = destroyGlobalAggOperatorInfo;
return pOperator;
}

View File

@ -744,7 +744,7 @@ void destroyAllSqlNode(SArray *pList) {
size_t size = taosArrayGetSize(pList);
for(int32_t i = 0; i < size; ++i) {
SSqlNode *pNode = taosArrayGetP(pList, 0);
SSqlNode *pNode = taosArrayGetP(pList, i);
destroySqlNode(pNode);
}