未验证 提交 2691f0f6 编写于 作者: D dapan1121 提交者: GitHub

Merge pull request #8562 from taosdata/fix/TD-10776

[TD-10776]<fix>: solve the problem that hashIntervalAgg function trig…
...@@ -919,23 +919,31 @@ SSDataBlock* doGetDataBlock(void* param, bool* newgroup) { ...@@ -919,23 +919,31 @@ SSDataBlock* doGetDataBlock(void* param, bool* newgroup) {
pBlock->info.rows = pRes->numOfRows; pBlock->info.rows = pRes->numOfRows;
if (pRes->numOfRows != 0) { if (pRes->numOfRows != 0) {
doSetupSDataBlock(pRes, pBlock, pInput->pFilterInfo, pInput->numOfFilterCols); doSetupSDataBlock(pRes, pBlock, pInput->pFilterInfo, pInput->numOfFilterCols);
*newgroup = false; if (pBlock->info.rows > 0) {
return pBlock; *newgroup = false;
return pBlock;
}
} }
// No data block exists. So retrieve and transfer it into to SSDataBlock SSDataBlock* result = NULL;
TAOS_ROW pRow = NULL; do {
taos_fetch_block(pSql, &pRow); // No data block exists. So retrieve and transfer it into to SSDataBlock
TAOS_ROW pRow = NULL;
taos_fetch_block(pSql, &pRow);
if (pRes->numOfRows == 0) { if (pRes->numOfRows == 0) {
pOperator->status = OP_EXEC_DONE; pOperator->status = OP_EXEC_DONE;
return NULL; result = NULL;
} break;
}
pBlock->info.rows = pRes->numOfRows; pBlock->info.rows = pRes->numOfRows;
doSetupSDataBlock(pRes, pBlock, pInput->pFilterInfo, pInput->numOfFilterCols); doSetupSDataBlock(pRes, pBlock, pInput->pFilterInfo, pInput->numOfFilterCols);
*newgroup = false; *newgroup = false;
return pBlock; result = pBlock;
} while (result->info.rows == 0);
return result;
} }
static void fetchNextBlockIfCompleted(SOperatorInfo* pOperator, bool* newgroup) { static void fetchNextBlockIfCompleted(SOperatorInfo* pOperator, bool* newgroup) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册