From 5031ac214449b73ecd3fe9d8d200a70a85c1be1f Mon Sep 17 00:00:00 2001 From: hjxilinx Date: Sun, 2 Feb 2020 22:46:50 +0800 Subject: [PATCH] fix a memory leak for super table join. --- src/system/detail/src/vnodeQueryProcess.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/system/detail/src/vnodeQueryProcess.c b/src/system/detail/src/vnodeQueryProcess.c index 1783a1a0b4..8ad2c3f309 100644 --- a/src/system/detail/src/vnodeQueryProcess.c +++ b/src/system/detail/src/vnodeQueryProcess.c @@ -573,10 +573,10 @@ static void vnodeMultiMeterMultiOutputProcessor(SQInfo *pQInfo) { tSidSet *pSids = pSupporter->pSidSet; SMeterObj *pOneMeter = getMeterObj(pSupporter->pMeterObj, pMeterSidExtInfo[0]->sid); - - resetCtxOutputBuf(pRuntimeEnv); - + if (isPointInterpoQuery(pQuery)) { + resetCtxOutputBuf(pRuntimeEnv); + assert(pQuery->limit.offset == 0 && pQuery->limit.limit != 0); while (pSupporter->subgroupIdx < pSids->numOfSubSet) { @@ -663,7 +663,9 @@ static void vnodeMultiMeterMultiOutputProcessor(SQInfo *pQInfo) { if (pSupporter->meterIdx >= pSids->numOfSids) { return; } - + + resetCtxOutputBuf(pRuntimeEnv); + for (int32_t i = 0; i < pRuntimeEnv->usedIndex; ++i) { SOutputRes *pOneRes = &pRuntimeEnv->pResult[i]; clearGroupResultBuf(pOneRes, pQuery->numOfOutputCols); -- GitLab