From 4e8d5e21a174d3032c97b25164feceaef8c43f86 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Fri, 16 Aug 2024 10:34:39 +0800 Subject: [PATCH] fix(tsdb): check tables number. --- source/dnode/vnode/src/tsdb/tsdbRead2.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/dnode/vnode/src/tsdb/tsdbRead2.c b/source/dnode/vnode/src/tsdb/tsdbRead2.c index 6783eb2cbd..7d633e2520 100644 --- a/source/dnode/vnode/src/tsdb/tsdbRead2.c +++ b/source/dnode/vnode/src/tsdb/tsdbRead2.c @@ -5182,7 +5182,10 @@ int32_t tsdbNextDataBlock2(STsdbReader* pReader, bool* hasNext) { if (pReader->step == EXTERNAL_ROWS_PREV) { // prepare for the main scan - code = doOpenReaderImpl(pReader); + if (tSimpleHashGetSize(pReader->status.pTableMap) > 0) { + code = doOpenReaderImpl(pReader); + } + int32_t step = 1; resetAllDataBlockScanInfo(pReader->status.pTableMap, pReader->innerReader[0]->info.window.ekey, step); @@ -5210,8 +5213,11 @@ int32_t tsdbNextDataBlock2(STsdbReader* pReader, bool* hasNext) { if (pReader->step == EXTERNAL_ROWS_MAIN && pReader->innerReader[1] != NULL) { // prepare for the next row scan + if (tSimpleHashGetSize(pReader->status.pTableMap) > 0) { + code = doOpenReaderImpl(pReader->innerReader[1]); + } + int32_t step = -1; - code = doOpenReaderImpl(pReader->innerReader[1]); resetAllDataBlockScanInfo(pReader->innerReader[1]->status.pTableMap, pReader->info.window.ekey, step); if (code != TSDB_CODE_SUCCESS) { (void) tsdbReleaseReader(pReader);