diff --git a/source/libs/stream/src/tstreamFileState.c b/source/libs/stream/src/tstreamFileState.c index 731bdc44586ec1e149a616ccbae79f3a62e56535..7d369bacf07bbd6b414f8d11040c6104e2cb6cf8 100644 --- a/source/libs/stream/src/tstreamFileState.c +++ b/source/libs/stream/src/tstreamFileState.c @@ -445,6 +445,7 @@ int32_t recoverSnapshot(SStreamFileState* pFileState) { code = streamStateGetKVByCur_rocksdb(pCur, pNewPos->pKey, (const void**)&pVal, &pVLen); if (code != TSDB_CODE_SUCCESS || pFileState->getTs(pNewPos->pKey) < pFileState->flushMark) { destroyRowBuffPos(pNewPos); + tdListPopTail(pFileState->usedBuffs); break; } memcpy(pNewPos->pRowBuff, pVal, pVLen);