fix(query): check for null ptr.

This commit is contained in:
Haojun Liao 2022-12-04 11:35:54 +08:00
parent fca20668f5
commit 0d687a533e
1 changed files with 19 additions and 15 deletions

View File

@ -2534,6 +2534,7 @@ int32_t initDelSkylineIterator(STableBlockScanInfo* pBlockScanInfo, STsdbReader*
int32_t code = 0; int32_t code = 0;
SArray* pDelData = taosArrayInit(4, sizeof(SDelData)); SArray* pDelData = taosArrayInit(4, sizeof(SDelData));
ASSERT(pReader->pReadSnap != NULL);
SDelFile* pDelFile = pReader->pReadSnap->fs.pDelFile; SDelFile* pDelFile = pReader->pReadSnap->fs.pDelFile;
if (pDelFile && taosArrayGetSize(pReader->pDelIdx) > 0) { if (pDelFile && taosArrayGetSize(pReader->pDelIdx) > 0) {
@ -2640,23 +2641,26 @@ static int32_t moveToNextFile(STsdbReader* pReader, SBlockNumber* pBlockNum) {
taosArrayDestroy(pIndexList); taosArrayDestroy(pIndexList);
SDelFile* pDelFile = pReader->pReadSnap->fs.pDelFile; if (pReader->pReadSnap != NULL) {
if (pReader->pDelFReader == NULL && pDelFile != NULL) {
int32_t code = tsdbDelFReaderOpen(&pReader->pDelFReader, pDelFile, pReader->pTsdb);
if (code != TSDB_CODE_SUCCESS) {
return code;
}
pReader->pDelIdx = taosArrayInit(4, sizeof(SDelIdx)); SDelFile* pDelFile = pReader->pReadSnap->fs.pDelFile;
if (pReader->pDelIdx == NULL) { if (pReader->pDelFReader == NULL && pDelFile != NULL) {
code = TSDB_CODE_OUT_OF_MEMORY; int32_t code = tsdbDelFReaderOpen(&pReader->pDelFReader, pDelFile, pReader->pTsdb);
return code; if (code != TSDB_CODE_SUCCESS) {
} return code;
}
code = tsdbReadDelIdx(pReader->pDelFReader, pReader->pDelIdx); pReader->pDelIdx = taosArrayInit(4, sizeof(SDelIdx));
if (code != TSDB_CODE_SUCCESS) { if (pReader->pDelIdx == NULL) {
taosArrayDestroy(pReader->pDelIdx); code = TSDB_CODE_OUT_OF_MEMORY;
return code; return code;
}
code = tsdbReadDelIdx(pReader->pDelFReader, pReader->pDelIdx);
if (code != TSDB_CODE_SUCCESS) {
taosArrayDestroy(pReader->pDelIdx);
return code;
}
} }
} }