fix: wrongly changed the column type of pk col during last row scan optimize
This commit is contained in:
parent
852052a99b
commit
5f28ee0e52
|
@ -2997,15 +2997,9 @@ static int32_t lastRowScanOptimize(SOptimizeContext* pCxt, SLogicSubplan* pLogic
|
|||
if (FUNCTION_TYPE_LAST == funcType) {
|
||||
nodesWalkExpr(nodesListGetNode(pFunc->pParameterList, 0), lastRowScanOptSetColDataType, &cxt);
|
||||
nodesListErase(pFunc->pParameterList, nodesListGetCell(pFunc->pParameterList, 1));
|
||||
if (pFunc->hasPk) {
|
||||
if (LIST_LENGTH(pFunc->pParameterList) != 2) {
|
||||
planError("last func which has pk but its parameter list length is not %d", 2);
|
||||
nodesClearList(cxt.pLastCols);
|
||||
taosArrayDestroy(isDuplicateCol);
|
||||
return TSDB_CODE_PLAN_INTERNAL_ERROR;
|
||||
}
|
||||
nodesWalkExpr(nodesListGetNode(pFunc->pParameterList, 1), lastRowScanOptSetColDataType, &cxt);
|
||||
}
|
||||
}
|
||||
if (pFunc->hasPk) {
|
||||
nodesListMakeAppend(&cxt.pOtherCols, nodesListGetNode(pFunc->pParameterList, LIST_LENGTH(pFunc->pParameterList) - 1));
|
||||
}
|
||||
} else {
|
||||
pNode = nodesListGetNode(pFunc->pParameterList, 0);
|
||||
|
|
Loading…
Reference in New Issue