fix: limit/slimit would prevent optimization projection elimination
This commit is contained in:
parent
218d455dcc
commit
8c955ef017
|
@ -328,10 +328,11 @@ SArray* extractColMatchInfo(SNodeList* pNodeList, SDataBlockDescNode* pOutputNod
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ASSERT(foundSource);
|
|
||||||
if (pNode->output) {
|
if (pNode->output) {
|
||||||
(*numOfOutputCols) += 1;
|
(*numOfOutputCols) += 1;
|
||||||
} else {
|
} else {
|
||||||
|
ASSERT(foundSource);
|
||||||
info->output = false;
|
info->output = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1088,6 +1088,10 @@ static bool eliminateProjOptMayBeOptimized(SLogicNode* pNode) {
|
||||||
}
|
}
|
||||||
|
|
||||||
SProjectLogicNode* pProjectNode = (SProjectLogicNode*)pNode;
|
SProjectLogicNode* pProjectNode = (SProjectLogicNode*)pNode;
|
||||||
|
if (-1 != pProjectNode->limit || -1 != pProjectNode->slimit || -1 != pProjectNode->offset || -1 != pProjectNode->soffset) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
SNode* pProjection;
|
SNode* pProjection;
|
||||||
FOREACH(pProjection, pProjectNode->pProjections) {
|
FOREACH(pProjection, pProjectNode->pProjections) {
|
||||||
SExprNode* pExprNode = (SExprNode*)pProjection;
|
SExprNode* pExprNode = (SExprNode*)pProjection;
|
||||||
|
|
Loading…
Reference in New Issue