From 114943ddb00a7c4cb618c51559ed4e24b50681de Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Mon, 5 Dec 2022 22:28:26 +0800 Subject: [PATCH] fix(query): set the correct flag when no neighbors exist. --- source/dnode/vnode/src/tsdb/tsdbRead.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/source/dnode/vnode/src/tsdb/tsdbRead.c b/source/dnode/vnode/src/tsdb/tsdbRead.c index 7717a2371b..a4581f5472 100644 --- a/source/dnode/vnode/src/tsdb/tsdbRead.c +++ b/source/dnode/vnode/src/tsdb/tsdbRead.c @@ -2483,12 +2483,11 @@ static int32_t buildComposedDataBlock(STsdbReader* pReader) { SBlockIndex bIndex = {0}; bool hasNeighbor = getNeighborBlockOfSameTable(pBlockInfo, pBlockScanInfo, &nextIndex, pReader->order, &bIndex); if (!hasNeighbor) { // do nothing - return 0; + setBlockAllDumped(pDumpInfo, pBlock->maxKey.ts, pReader->order); + break; } - bool overlap = overlapWithNeighborBlock(pBlock, &bIndex, pReader->order); - - if (overlap) { // load next block + if (overlapWithNeighborBlock(pBlock, &bIndex, pReader->order)) { // load next block SReaderStatus* pStatus = &pReader->status; SDataBlockIter* pBlockIter = &pStatus->blockIter; @@ -2502,15 +2501,16 @@ static int32_t buildComposedDataBlock(STsdbReader* pReader) { // 3. load the neighbor block, and set it to be the currently accessed file data block code = doLoadFileBlockData(pReader, pBlockIter, &pStatus->fileBlockData, pBlockInfo->uid); if (code != TSDB_CODE_SUCCESS) { - return code; + setBlockAllDumped(pDumpInfo, pBlock->maxKey.ts, pReader->order); + break; } // 4. check the data values initBlockDumpInfo(pReader, pBlockIter); + } else { + setBlockAllDumped(pDumpInfo, pBlock->maxKey.ts, pReader->order); + break; } - - setBlockAllDumped(pDumpInfo, pBlock->maxKey.ts, pReader->order); - break; } } } -- GitLab