fix(query): set the correct table iter.

This commit is contained in:
Haojun Liao 2023-02-13 10:05:26 +08:00
parent 34036b932f
commit 27a53a0c64
1 changed files with 6 additions and 6 deletions

View File

@ -4073,11 +4073,11 @@ static bool doTsdbNextDataBlock(STsdbReader* pReader) {
} }
bool tsdbNextDataBlock(STsdbReader* pReader) { bool tsdbNextDataBlock(STsdbReader* pReader) {
if (isEmptyQueryTimeWindow(&pReader->window)) { if (isEmptyQueryTimeWindow(&pReader->window) || pReader->step == EXTERNAL_ROWS_NEXT) {
return false; return false;
} }
if (pReader->innerReader[0] != NULL && pReader->step == 0) { if (pReader->step == 0 && pReader->innerReader[0] != NULL) {
bool ret = doTsdbNextDataBlock(pReader->innerReader[0]); bool ret = doTsdbNextDataBlock(pReader->innerReader[0]);
pReader->step = EXTERNAL_ROWS_PREV; pReader->step = EXTERNAL_ROWS_PREV;
if (ret) { if (ret) {
@ -4102,7 +4102,7 @@ bool tsdbNextDataBlock(STsdbReader* pReader) {
return ret; return ret;
} }
if (pReader->innerReader[1] != NULL && pReader->step == EXTERNAL_ROWS_MAIN) { if (pReader->step == EXTERNAL_ROWS_MAIN && pReader->innerReader[1] != NULL) {
// prepare for the next row scan // prepare for the next row scan
int32_t code = doOpenReaderImpl(pReader->innerReader[1]); int32_t code = doOpenReaderImpl(pReader->innerReader[1]);
resetAllDataBlockScanInfo(pReader->innerReader[1]->status.pTableMap, pReader->window.ekey); resetAllDataBlockScanInfo(pReader->innerReader[1]->status.pTableMap, pReader->window.ekey);
@ -4110,10 +4110,10 @@ bool tsdbNextDataBlock(STsdbReader* pReader) {
return code; return code;
} }
bool ret1 = doTsdbNextDataBlock(pReader->innerReader[1]); ret = doTsdbNextDataBlock(pReader->innerReader[1]);
pReader->step = EXTERNAL_ROWS_NEXT; pReader->step = EXTERNAL_ROWS_NEXT;
if (ret1) { if (ret) {
return ret1; return ret;
} }
} }