fix(query): protect read snap with reader mutex when closing reader

This commit is contained in:
Minglei Jin 2023-02-01 15:09:21 +08:00
parent fc829aec52
commit dca720fc7d
1 changed files with 4 additions and 1 deletions

View File

@ -4019,6 +4019,7 @@ void tsdbReaderClose(STsdbReader* pReader) {
return;
}
tsdbAcquireReader(pReader);
{
if (pReader->innerReader[0] != NULL || pReader->innerReader[1] != NULL) {
STsdbReader* p = pReader->innerReader[0];
@ -4076,10 +4077,12 @@ void tsdbReaderClose(STsdbReader* pReader) {
pReader->pDelIdx = NULL;
}
qTrace("tsdb/reader: %p, untake snapshot", pReader);
qTrace("tsdb/reader-close: %p, untake snapshot", pReader);
tsdbUntakeReadSnap(pReader, pReader->pReadSnap, true);
pReader->pReadSnap = NULL;
tsdbReleaseReader(pReader);
tsdbUninitReaderLock(pReader);
taosMemoryFree(pReader->status.uidCheckInfo.tableUidList);