mid pull over
This commit is contained in:
parent
6e19f452ce
commit
e2352875fe
|
@ -4287,6 +4287,13 @@ static SSDataBlock* doStreamMidIntervalAgg(SOperatorInfo* pOperator) {
|
||||||
if (resBlock != NULL) {
|
if (resBlock != NULL) {
|
||||||
return resBlock;
|
return resBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pInfo->recvRetrive) {
|
||||||
|
pInfo->recvRetrive = false;
|
||||||
|
printDataBlock(pInfo->pMidRetriveRes, getStreamOpName(pOperator->operatorType), GET_TASKID(pTaskInfo));
|
||||||
|
return pInfo->pMidRetriveRes;
|
||||||
|
}
|
||||||
|
|
||||||
if (pInfo->clearState) {
|
if (pInfo->clearState) {
|
||||||
pInfo->clearState = false;
|
pInfo->clearState = false;
|
||||||
clearFunctionContext(&pOperator->exprSupp);
|
clearFunctionContext(&pOperator->exprSupp);
|
||||||
|
@ -4371,7 +4378,11 @@ static SSDataBlock* doStreamMidIntervalAgg(SOperatorInfo* pOperator) {
|
||||||
doDeleteWindows(pOperator, &pInfo->interval, pBlock, delWins, pInfo->pUpdatedMap);
|
doDeleteWindows(pOperator, &pInfo->interval, pBlock, delWins, pInfo->pUpdatedMap);
|
||||||
addMidRetriveWindow(delWins, pInfo->pPullDataMap, pInfo->numOfChild);
|
addMidRetriveWindow(delWins, pInfo->pPullDataMap, pInfo->numOfChild);
|
||||||
taosArrayDestroy(delWins);
|
taosArrayDestroy(delWins);
|
||||||
continue;
|
pInfo->recvRetrive = true;
|
||||||
|
copyDataBlock(pInfo->pMidRetriveRes, pBlock);
|
||||||
|
pInfo->pMidRetriveRes->info.type = STREAM_MID_RETRIEVE;
|
||||||
|
pInfo->clearState = true;
|
||||||
|
break;
|
||||||
} else {
|
} else {
|
||||||
ASSERTS(pBlock->info.type == STREAM_INVALID, "invalid SSDataBlock type");
|
ASSERTS(pBlock->info.type == STREAM_INVALID, "invalid SSDataBlock type");
|
||||||
}
|
}
|
||||||
|
@ -4408,6 +4419,13 @@ static SSDataBlock* doStreamMidIntervalAgg(SOperatorInfo* pOperator) {
|
||||||
if (resBlock != NULL) {
|
if (resBlock != NULL) {
|
||||||
return resBlock;
|
return resBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pInfo->recvRetrive) {
|
||||||
|
pInfo->recvRetrive = false;
|
||||||
|
printDataBlock(pInfo->pMidRetriveRes, getStreamOpName(pOperator->operatorType), GET_TASKID(pTaskInfo));
|
||||||
|
return pInfo->pMidRetriveRes;
|
||||||
|
}
|
||||||
|
|
||||||
if (pInfo->clearState) {
|
if (pInfo->clearState) {
|
||||||
pInfo->clearState = false;
|
pInfo->clearState = false;
|
||||||
clearFunctionContext(&pOperator->exprSupp);
|
clearFunctionContext(&pOperator->exprSupp);
|
||||||
|
|
Loading…
Reference in New Issue