[Bug](load) fix wrong data in mv when routine load with function mapping (#31787)
This commit is contained in:
@ -568,14 +568,14 @@ public class Load {
|
||||
List<SlotRef> slots = Lists.newArrayList();
|
||||
entry.getValue().collect(SlotRef.class, slots);
|
||||
for (SlotRef slot : slots) {
|
||||
if (slotDescByName.get(slot.getColumnName()) != null) {
|
||||
smap.getLhs().add(slot);
|
||||
smap.getRhs().add(
|
||||
getExprFromDesc(analyzer, getSlotFromDesc(slotDescByName.get(slot.getColumnName())), slot));
|
||||
} else if (exprsByName.get(slot.getColumnName()) != null) {
|
||||
if (exprsByName.get(slot.getColumnName()) != null) {
|
||||
smap.getLhs().add(slot);
|
||||
smap.getRhs().add(new CastExpr(tbl.getColumn(slot.getColumnName()).getType(),
|
||||
exprsByName.get(slot.getColumnName())));
|
||||
} else if (slotDescByName.get(slot.getColumnName()) != null) {
|
||||
smap.getLhs().add(slot);
|
||||
smap.getRhs().add(
|
||||
getExprFromDesc(analyzer, getSlotFromDesc(slotDescByName.get(slot.getColumnName())), slot));
|
||||
} else {
|
||||
if (entry.getKey().equalsIgnoreCase(Column.DELETE_SIGN)) {
|
||||
throw new UserException("unknown reference column in DELETE ON clause:" + slot.getColumnName());
|
||||
|
||||
Reference in New Issue
Block a user