[fix](planner) SetOperationNode's slots' nullability calculation is wrong (#19108)

SetOperationNode's slots' nullability should consider slots info from all children, even some children have EmptyResultSet
This commit is contained in:
starocean999
2023-04-26 21:18:37 +08:00
committed by GitHub
parent 965682542d
commit aacc075f09
3 changed files with 53 additions and 1 deletions

View File

@ -219,7 +219,8 @@ public abstract class SetOperationNode extends PlanNode {
for (int j = 1; j < resultExprLists.size(); j++) {
isNullable = isNullable || resultExprLists.get(j).get(i).isNullable();
}
tupleDescriptor.getSlots().get(i).setIsNullable(isNullable);
tupleDescriptor.getSlots().get(i).setIsNullable(
tupleDescriptor.getSlots().get(i).getIsNullable() || isNullable);
tupleDescriptor.computeMemLayout();
}
}