Merge pull request #29957 from taosdata/fix/ly_stream_main_1
fix(stream): fix mem leak
This commit is contained in:
commit
6d9e811693
|
@ -234,6 +234,11 @@ int32_t updateEventWindowInfo(SStreamAggSupporter* pAggSup, SEventWindowInfo* pW
|
||||||
pWin->ekey = pTsData[i];
|
pWin->ekey = pTsData[i];
|
||||||
pWinInfo->pWinFlag->endFlag = ends[i];
|
pWinInfo->pWinFlag->endFlag = ends[i];
|
||||||
} else if (pWin->ekey == pTsData[i]) {
|
} else if (pWin->ekey == pTsData[i]) {
|
||||||
|
if (pWinInfo->pWinFlag->endFlag == true && ends[i] == false) {
|
||||||
|
(*pWinRow) = i + 1 - start;
|
||||||
|
*pRebuild = true;
|
||||||
|
goto _end;
|
||||||
|
}
|
||||||
pWinInfo->pWinFlag->endFlag |= ends[i];
|
pWinInfo->pWinFlag->endFlag |= ends[i];
|
||||||
} else if (ends[i] && !pWinInfo->pWinFlag->endFlag) {
|
} else if (ends[i] && !pWinInfo->pWinFlag->endFlag) {
|
||||||
*pRebuild = true;
|
*pRebuild = true;
|
||||||
|
|
|
@ -479,14 +479,12 @@ void destroyFlusedppPos(void* ppRes) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void clearGroupResInfo(SGroupResInfo* pGroupResInfo) {
|
void clearGroupResInfo(SGroupResInfo* pGroupResInfo) {
|
||||||
if (pGroupResInfo->freeItem) {
|
|
||||||
int32_t size = taosArrayGetSize(pGroupResInfo->pRows);
|
int32_t size = taosArrayGetSize(pGroupResInfo->pRows);
|
||||||
for (int32_t i = pGroupResInfo->index; i < size; i++) {
|
for (int32_t i = pGroupResInfo->index; i < size; i++) {
|
||||||
void* pPos = taosArrayGetP(pGroupResInfo->pRows, i);
|
void* pPos = taosArrayGetP(pGroupResInfo->pRows, i);
|
||||||
destroyFlusedPos(pPos);
|
destroyFlusedPos(pPos);
|
||||||
}
|
}
|
||||||
pGroupResInfo->freeItem = false;
|
pGroupResInfo->freeItem = false;
|
||||||
}
|
|
||||||
taosArrayDestroy(pGroupResInfo->pRows);
|
taosArrayDestroy(pGroupResInfo->pRows);
|
||||||
pGroupResInfo->pRows = NULL;
|
pGroupResInfo->pRows = NULL;
|
||||||
pGroupResInfo->index = 0;
|
pGroupResInfo->index = 0;
|
||||||
|
|
Loading…
Reference in New Issue