[fix](Nereids) adjust nullable for set operation may cause IndexOutOfBound (#35588)
after we refactor set oepration, let it has projection ability, its output size may diff with its child's output size. so we should use it output size as nullable flag list size to ensure it has same size with set operation's output.
This commit is contained in:
@ -168,7 +168,7 @@ public class AdjustNullable extends DefaultPlanRewriter<Map<ExprId, Slot>> imple
|
||||
ImmutableList.Builder<List<SlotReference>> newChildrenOutputs = ImmutableList.builder();
|
||||
List<Boolean> inputNullable = null;
|
||||
if (!setOperation.children().isEmpty()) {
|
||||
inputNullable = setOperation.child(0).getOutput().stream()
|
||||
inputNullable = setOperation.getRegularChildOutput(0).stream()
|
||||
.map(ExpressionTrait::nullable).collect(Collectors.toList());
|
||||
for (int i = 0; i < setOperation.arity(); i++) {
|
||||
List<Slot> childOutput = setOperation.child(i).getOutput();
|
||||
|
||||
Reference in New Issue
Block a user