diff --git a/src/query/src/qExecutor.c b/src/query/src/qExecutor.c index d0874c36bc1783242c8536ebeec1fbce8559389f..391a93c36af32f9d8e27cedabda79acb72c9ae12 100644 --- a/src/query/src/qExecutor.c +++ b/src/query/src/qExecutor.c @@ -3631,6 +3631,9 @@ void scanOneTableDataBlocks(SQueryRuntimeEnv *pRuntimeEnv, TSKEY start) { // do nothing if no data blocks are found qualified during scan if (qstatus.lastKey != pTableQueryInfo->lastKey) { qstatus.curWindow.ekey = pTableQueryInfo->lastKey - step; + } else { // the lastkey does not increase, which means no data checked yet, and all result rows has been closed. + qDebug("QInfo:%p no results generated in this scan, abort", pQInfo); + return; } qstatus.lastKey = pTableQueryInfo->lastKey;