morrySnow commented on code in PR #67783:
URL: https://github.com/apache/doris/pull/67783#discussion_r4023938691
##########
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/BindRelation.java:
##########
@@ -1068,26 +1072,19 @@ public static LogicalPlan
checkAndAddChangeScanFilter(LogicalOlapScan scan,
if (scanType.equals(StreamScanType.APPEND_ONLY)) {
Preconditions.checkArgument(opSlot != null, "opSlot is null");
return new LogicalFilter<>(ImmutableSet.of(new EqualTo(opSlot,
- new BigIntLiteral(BinlogUtils.ROW_BINLOG_APPEND))), plan);
+ new BigIntLiteral(BinlogUtils.ROW_BINLOG_APPEND))), scan);
} else if (beforeImageOnly) {
return new LogicalFilter<>(ImmutableSet.of(new InPredicate(opSlot,
ImmutableList.of(
new BigIntLiteral(BinlogUtils.ROW_BINLOG_DELETE),
- new
BigIntLiteral(BinlogUtils.ROW_BINLOG_UPDATE_BEFORE)))), plan);
+ new
BigIntLiteral(BinlogUtils.ROW_BINLOG_UPDATE_BEFORE)))), scan);
}
- return plan;
+ return scan;
}
- private LogicalPlan projectFromOriginSlots(LogicalPlan plan, List<Slot>
wantedSlots) {
- Map<String, Slot> childSlotByName = new
HashMap<>(plan.getOutput().size());
- for (Slot slot : plan.getOutput()) {
- childSlotByName.put(slot.getName(), slot);
- }
+ private LogicalPlan projectFromUnboundSlots(LogicalPlan plan,
List<UnboundSlot> wantedSlots) {
List<NamedExpression> project = new ArrayList<>(wantedSlots.size());
- for (Slot wanted : wantedSlots) {
- Slot match = childSlotByName.get(wanted.getName());
- Preconditions.checkArgument(match != null,
- "column %s not found in child output", wanted.getName());
- project.add(new Alias(match, wanted.getName()));
+ for (UnboundSlot wanted : wantedSlots) {
+ project.add(new Alias(wanted, wanted.getName()));
Review Comment:
Fixed in cbb2b9f2023. `projectFromUnboundSlots` now reads
`UnboundSlot#getNameParts()`, uses the final part as the raw alias name, and
preserves all preceding parts as the alias qualifier instead of using the
rendered `getName()`. Added MOW time-travel regression coverage for a dotted
primitive column (`v1.v2`) with both unqualified and table-qualified
references; the suite passes.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]