diff --git a/source/libs/executor/src/scanoperator.c b/source/libs/executor/src/scanoperator.c index 0123eb25759f7c90750edf1916d580ef575d1226..f0577358b12dcc39da522dc32ee15174f2764102 100644 --- a/source/libs/executor/src/scanoperator.c +++ b/source/libs/executor/src/scanoperator.c @@ -4891,6 +4891,12 @@ void destroyTableMergeScanOperatorInfo(void* param) { tsdbReaderClose(pTableScanInfo->pReader); + for (int i = 0; i < taosArrayGetSize(pTableScanInfo->queryConds); i++) { + SQueryTableDataCond* pCond = taosArrayGet(pTableScanInfo->queryConds, i); + taosMemoryFree(pCond->colList); + } + taosArrayDestroy(pTableScanInfo->queryConds); + if (pTableScanInfo->matchInfo.pList != NULL) { taosArrayDestroy(pTableScanInfo->matchInfo.pList); }