This is an automated email from the ASF dual-hosted git repository.
jakevin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 79221a54ca [refactor](Nereids): remove withLogicalProperties & check
children size (#21563)
79221a54ca is described below
commit 79221a54cab412976beee1a59af8aa279a850f78
Author: jakevin <[email protected]>
AuthorDate: Thu Jul 6 20:37:17 2023 +0800
[refactor](Nereids): remove withLogicalProperties & check children size
(#21563)
---
.../doris/nereids/analyzer/UnboundOlapTableSink.java | 6 ------
.../doris/nereids/analyzer/UnboundOneRowRelation.java | 5 -----
.../doris/nereids/analyzer/UnboundRelation.java | 6 ------
.../doris/nereids/analyzer/UnboundTVFRelation.java | 5 -----
.../apache/doris/nereids/rules/rewrite/MultiJoin.java | 5 -----
.../mv/AbstractSelectMaterializedIndexRule.java | 3 ++-
.../apache/doris/nereids/trees/plans/FakePlan.java | 5 -----
.../apache/doris/nereids/trees/plans/GroupPlan.java | 10 ----------
.../org/apache/doris/nereids/trees/plans/Plan.java | 6 ------
.../doris/nereids/trees/plans/commands/Command.java | 5 -----
.../nereids/trees/plans/logical/LogicalAggregate.java | 7 +------
.../nereids/trees/plans/logical/LogicalApply.java | 8 +-------
.../trees/plans/logical/LogicalAssertNumRows.java | 9 ++-------
.../doris/nereids/trees/plans/logical/LogicalCTE.java | 7 +------
.../nereids/trees/plans/logical/LogicalCTEAnchor.java | 5 -----
.../trees/plans/logical/LogicalCTEConsumer.java | 8 --------
.../trees/plans/logical/LogicalCTEProducer.java | 6 ------
.../trees/plans/logical/LogicalCheckPolicy.java | 6 +-----
.../trees/plans/logical/LogicalEmptyRelation.java | 5 -----
.../nereids/trees/plans/logical/LogicalEsScan.java | 6 ------
.../nereids/trees/plans/logical/LogicalExcept.java | 6 ------
.../nereids/trees/plans/logical/LogicalFileScan.java | 6 ------
.../nereids/trees/plans/logical/LogicalFilter.java | 6 +-----
.../nereids/trees/plans/logical/LogicalGenerate.java | 7 +------
.../nereids/trees/plans/logical/LogicalHaving.java | 6 +-----
.../nereids/trees/plans/logical/LogicalIntersect.java | 6 ------
.../nereids/trees/plans/logical/LogicalJdbcScan.java | 6 ------
.../nereids/trees/plans/logical/LogicalJoin.java | 7 +------
.../nereids/trees/plans/logical/LogicalLimit.java | 6 +-----
.../nereids/trees/plans/logical/LogicalOlapScan.java | 8 --------
.../trees/plans/logical/LogicalOlapTableSink.java | 6 ------
.../trees/plans/logical/LogicalOneRowRelation.java | 5 -----
.../trees/plans/logical/LogicalPartitionTopN.java | 7 +------
.../nereids/trees/plans/logical/LogicalProject.java | 7 +------
.../nereids/trees/plans/logical/LogicalRepeat.java | 7 +------
.../trees/plans/logical/LogicalSchemaScan.java | 5 -----
.../trees/plans/logical/LogicalSelectHint.java | 13 ++-----------
.../nereids/trees/plans/logical/LogicalSort.java | 6 +-----
.../trees/plans/logical/LogicalSubQueryAlias.java | 7 +------
.../trees/plans/logical/LogicalTVFRelation.java | 5 -----
.../nereids/trees/plans/logical/LogicalTopN.java | 6 +-----
.../nereids/trees/plans/logical/LogicalUnion.java | 6 ------
.../nereids/trees/plans/logical/LogicalWindow.java | 7 +------
.../doris/nereids/trees/plans/logical/UsingJoin.java | 6 ------
.../trees/plans/physical/PhysicalAssertNumRows.java | 7 +------
.../trees/plans/physical/PhysicalCTEAnchor.java | 7 +------
.../trees/plans/physical/PhysicalCTEConsumer.java | 6 ------
.../trees/plans/physical/PhysicalCTEProducer.java | 5 -----
.../trees/plans/physical/PhysicalDistribute.java | 7 +------
.../trees/plans/physical/PhysicalEmptyRelation.java | 6 ------
.../nereids/trees/plans/physical/PhysicalEsScan.java | 5 -----
.../nereids/trees/plans/physical/PhysicalExcept.java | 6 ------
.../trees/plans/physical/PhysicalFileScan.java | 6 ------
.../nereids/trees/plans/physical/PhysicalFilter.java | 6 +-----
.../trees/plans/physical/PhysicalGenerate.java | 7 +------
.../trees/plans/physical/PhysicalHashAggregate.java | 8 +-------
.../trees/plans/physical/PhysicalHashJoin.java | 8 +-------
.../trees/plans/physical/PhysicalIntersect.java | 6 ------
.../trees/plans/physical/PhysicalJdbcScan.java | 5 -----
.../nereids/trees/plans/physical/PhysicalLimit.java | 6 +-----
.../trees/plans/physical/PhysicalNestedLoopJoin.java | 9 +--------
.../trees/plans/physical/PhysicalOlapScan.java | 7 -------
.../trees/plans/physical/PhysicalOlapTableSink.java | 6 ------
.../trees/plans/physical/PhysicalOneRowRelation.java | 6 ------
.../trees/plans/physical/PhysicalPartitionTopN.java | 6 ------
.../nereids/trees/plans/physical/PhysicalProject.java | 12 ++++--------
.../trees/plans/physical/PhysicalQuickSort.java | 6 +-----
.../nereids/trees/plans/physical/PhysicalRepeat.java | 7 +------
.../trees/plans/physical/PhysicalSchemaScan.java | 6 ------
.../plans/physical/PhysicalStorageLayerAggregate.java | 6 ------
.../trees/plans/physical/PhysicalTVFRelation.java | 6 ------
.../nereids/trees/plans/physical/PhysicalTopN.java | 6 +-----
.../nereids/trees/plans/physical/PhysicalUnion.java | 6 ------
.../nereids/trees/plans/physical/PhysicalWindow.java | 7 +------
.../doris/nereids/jobs/RewriteTopDownJobTest.java | 5 -----
.../nereids/jobs/cascades/DeriveStatsJobTest.java | 5 +++--
.../doris/nereids/stats/StatsCalculatorTest.java | 5 +++--
.../doris/nereids/trees/plans/PlanOutputTest.java | 19 -------------------
78 files changed, 45 insertions(+), 466 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOlapTableSink.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOlapTableSink.java
index 0bc82838a5..344cfb9b69 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOlapTableSink.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOlapTableSink.java
@@ -113,12 +113,6 @@ public class UnboundOlapTableSink<CHILD_TYPE extends Plan>
extends LogicalUnary<
Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new UnboundOlapTableSink<>(nameParts, colNames, hints,
partitions, groupExpression,
- logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOneRowRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOneRowRelation.java
index 1b68127a38..3f349c9224 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOneRowRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundOneRowRelation.java
@@ -87,11 +87,6 @@ public class UnboundOneRowRelation extends LogicalLeaf
implements Unbound, OneRo
return new UnboundOneRowRelation(id, projects, groupExpression,
Optional.of(logicalPropertiesSupplier.get()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new UnboundOneRowRelation(id, projects, Optional.empty(),
logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundRelation.java
index 08a1c8ebfb..1f820398d9 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundRelation.java
@@ -98,12 +98,6 @@ public class UnboundRelation extends LogicalRelation
implements Unbound {
isTempPart, hints);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new UnboundRelation(id, nameParts, Optional.empty(),
logicalProperties, partNames,
- isTempPart, hints);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTVFRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTVFRelation.java
index ccceb55373..2116c63c29 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTVFRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTVFRelation.java
@@ -99,11 +99,6 @@ public class UnboundTVFRelation extends LogicalLeaf
implements TVFRelation, Unbo
Optional.of(getLogicalProperties()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new UnboundTVFRelation(id, functionName, properties,
Optional.empty(), logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/MultiJoin.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/MultiJoin.java
index 11aedf3536..4255648c31 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/MultiJoin.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/MultiJoin.java
@@ -168,11 +168,6 @@ public class MultiJoin extends AbstractLogicalPlan {
throw new RuntimeException("multiJoin can't invoke
withGroupExpression");
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- throw new RuntimeException("multiJoin can't invoke
withLogicalProperties");
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/mv/AbstractSelectMaterializedIndexRule.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/mv/AbstractSelectMaterializedIndexRule.java
index 7fd1e080e1..1960dbabdc 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/mv/AbstractSelectMaterializedIndexRule.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/mv/AbstractSelectMaterializedIndexRule.java
@@ -504,7 +504,8 @@ public abstract class AbstractSelectMaterializedIndexRule {
@Override
public LogicalOlapScan visitLogicalOlapScan(LogicalOlapScan scan, Void
ctx) {
- return scan.withLogicalProperties(Optional.empty());
+ return (LogicalOlapScan)
scan.withGroupExprLogicalPropChildren(scan.getGroupExpression(),
Optional.empty(),
+ ImmutableList.of());
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/FakePlan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/FakePlan.java
index e1011bf69e..b964bec262 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/FakePlan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/FakePlan.java
@@ -100,11 +100,6 @@ public class FakePlan implements Plan {
return this;
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return this;
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/GroupPlan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/GroupPlan.java
index 7384f353f9..0d4d278abf 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/GroupPlan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/GroupPlan.java
@@ -64,11 +64,6 @@ public class GroupPlan extends LogicalLeaf {
throw new IllegalStateException("GroupPlan can not invoke getStats()");
}
- @Override
- public GroupPlan withOutput(List<Slot> output) {
- throw new IllegalStateException("GroupPlan can not invoke
withOutput()");
- }
-
@Override
public GroupPlan withChildren(List<Plan> children) {
throw new IllegalStateException("GroupPlan can not invoke
withChildren()");
@@ -79,11 +74,6 @@ public class GroupPlan extends LogicalLeaf {
throw new IllegalStateException("GroupPlan can not invoke
withGroupExpression()");
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- throw new IllegalStateException("GroupPlan can not invoke
withLogicalProperties()");
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/Plan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/Plan.java
index 8388f256c8..05bebf7403 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/Plan.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/Plan.java
@@ -121,14 +121,8 @@ public interface Plan extends TreeNode<Plan> {
String treeString();
- default Plan withOutput(List<Slot> output) {
- return
withLogicalProperties(Optional.of(getLogicalProperties().withOutput(output)));
- }
-
Plan withGroupExpression(Optional<GroupExpression> groupExpression);
- Plan withLogicalProperties(Optional<LogicalProperties> logicalProperties);
-
Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children);
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/Command.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/Command.java
index f53246c881..e5c7413fa6 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/Command.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/Command.java
@@ -123,9 +123,4 @@ public abstract class Command extends AbstractPlan
implements LogicalPlan {
public Plan withGroupExpression(Optional<GroupExpression> groupExpression)
{
throw new RuntimeException("Command do not implement
withGroupExpression");
}
-
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- throw new RuntimeException("Command do not implement
withLogicalProperties");
- }
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAggregate.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAggregate.java
index 725ef5f1d5..e77f47e2b5 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAggregate.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAggregate.java
@@ -250,15 +250,10 @@ public class LogicalAggregate<CHILD_TYPE extends Plan>
hasPushed, sourceRepeat, groupExpression,
Optional.of(getLogicalProperties()), children.get(0));
}
- @Override
- public LogicalAggregate<Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalAggregate<>(groupByExpressions, outputExpressions,
normalized, ordinalIsResolved, generated,
- hasPushed, sourceRepeat, Optional.empty(), logicalProperties,
children.get(0));
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalAggregate<>(groupByExpressions, outputExpressions,
normalized, ordinalIsResolved, generated,
hasPushed, sourceRepeat, groupExpression,
Optional.of(getLogicalProperties()), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalApply.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalApply.java
index eb0d9f90cc..4d255c5c04 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalApply.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalApply.java
@@ -215,16 +215,10 @@ public class LogicalApply<LEFT_CHILD_TYPE extends Plan,
RIGHT_CHILD_TYPE extends
markJoinSlotReference, subCorrespondingConjunct,
needAddSubOutputToProjects, left(), right());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalApply<>(Optional.empty(), logicalProperties,
- correlationSlot, subqueryExpr, correlationFilter,
- markJoinSlotReference, subCorrespondingConjunct,
needAddSubOutputToProjects, left(), right());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 2);
return new LogicalApply<>(groupExpression, logicalProperties,
correlationSlot, subqueryExpr, correlationFilter,
markJoinSlotReference, subCorrespondingConjunct,
needAddSubOutputToProjects, children.get(0),
children.get(1));
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAssertNumRows.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAssertNumRows.java
index d5d00e5816..69b5942c72 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAssertNumRows.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalAssertNumRows.java
@@ -104,16 +104,11 @@ public class LogicalAssertNumRows<CHILD_TYPE extends
Plan> extends LogicalUnary<
groupExpression, Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalAssertNumRows<>(assertNumRowsElement,
Optional.empty(), logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
- return new LogicalAssertNumRows<>(assertNumRowsElement,
- groupExpression, logicalProperties, children.get(0));
+ Preconditions.checkArgument(children.size() == 1);
+ return new LogicalAssertNumRows<>(assertNumRowsElement,
groupExpression, logicalProperties, children.get(0));
}
@Override
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTE.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTE.java
index 081892d561..9b2727faab 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTE.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTE.java
@@ -145,15 +145,10 @@ public class LogicalCTE<CHILD_TYPE extends Plan> extends
LogicalUnary<CHILD_TYPE
registered, cteNameToId);
}
- @Override
- public LogicalCTE<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalCTE<>(aliasQueries, Optional.empty(),
logicalProperties, child(), registered,
- cteNameToId);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(aliasQueries.size() > 0);
return new LogicalCTE<>(aliasQueries, groupExpression,
logicalProperties, children.get(0),
registered, cteNameToId);
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEAnchor.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEAnchor.java
index 418b5e1ecd..605554efc1 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEAnchor.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEAnchor.java
@@ -72,11 +72,6 @@ public class LogicalCTEAnchor<LEFT_CHILD_TYPE extends Plan,
return new LogicalCTEAnchor<>(groupExpression,
Optional.of(getLogicalProperties()), left(), right(), cteId);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalCTEAnchor<>(groupExpression, logicalProperties,
left(), right(), cteId);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEConsumer.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEConsumer.java
index ada59a6728..33e688645d 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEConsumer.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEConsumer.java
@@ -117,14 +117,6 @@ public class LogicalCTEConsumer extends LogicalLeaf {
consumerId, name);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalCTEConsumer(groupExpression, logicalProperties,
cteId,
- consumerToProducerOutputMap,
- producerToConsumerOutputMap,
- consumerId, name);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEProducer.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEProducer.java
index 135d8c35bd..b6123edaca 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEProducer.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCTEProducer.java
@@ -97,12 +97,6 @@ public class LogicalCTEProducer<CHILD_TYPE extends Plan>
extends LogicalUnary<CH
projects, rewritten);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalCTEProducer<>(groupExpression, logicalProperties,
child(), cteId,
- projects, rewritten);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCheckPolicy.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCheckPolicy.java
index 78349a87ae..78578fa7b5 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCheckPolicy.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCheckPolicy.java
@@ -99,14 +99,10 @@ public class LogicalCheckPolicy<CHILD_TYPE extends Plan>
extends LogicalUnary<CH
return new LogicalCheckPolicy<>(groupExpression,
Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalCheckPolicy<>(Optional.empty(), logicalProperties,
child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalCheckPolicy<>(groupExpression, logicalProperties,
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEmptyRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEmptyRelation.java
index 15748c6eb9..3484b95983 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEmptyRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEmptyRelation.java
@@ -77,11 +77,6 @@ public class LogicalEmptyRelation extends LogicalLeaf
implements EmptyRelation,
return new LogicalEmptyRelation(projects, groupExpression,
Optional.of(logicalPropertiesSupplier.get()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalEmptyRelation(projects, Optional.empty(),
logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEsScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEsScan.java
index 4948603b86..012348938b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEsScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalEsScan.java
@@ -70,12 +70,6 @@ public class LogicalEsScan extends LogicalRelation {
Optional.of(getLogicalProperties()));
}
- @Override
- public LogicalEsScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalEsScan(id, (ExternalTable) table, qualifier,
groupExpression,
- logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalExcept.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalExcept.java
index 0bb91b25d8..9766e7d846 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalExcept.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalExcept.java
@@ -70,12 +70,6 @@ public class LogicalExcept extends LogicalSetOperation {
Optional.of(getLogicalProperties()), children);
}
- @Override
- public LogicalExcept withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalExcept(qualifier, outputs,
- Optional.empty(), logicalProperties, children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFileScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFileScan.java
index e3dd7d4097..52d66de129 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFileScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFileScan.java
@@ -83,12 +83,6 @@ public class LogicalFileScan extends LogicalRelation {
Optional.of(getLogicalProperties()), conjuncts);
}
- @Override
- public LogicalFileScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalFileScan(id, (ExternalTable) table, qualifier,
groupExpression,
- logicalProperties, conjuncts);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFilter.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFilter.java
index 6f38a633a5..6943062e7d 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFilter.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalFilter.java
@@ -126,14 +126,10 @@ public class LogicalFilter<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD_T
return new LogicalFilter<>(conjuncts, groupExpression,
Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalFilter<Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalFilter<>(conjuncts, Optional.empty(),
logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalFilter<>(conjuncts, groupExpression,
logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalGenerate.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalGenerate.java
index 2310930c96..e8778b13d7 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalGenerate.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalGenerate.java
@@ -90,15 +90,10 @@ public class LogicalGenerate<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD
groupExpression, Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalGenerate<Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalGenerate<>(generators, generatorOutput,
- Optional.empty(), logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalGenerate<>(generators, generatorOutput,
groupExpression, logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalHaving.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalHaving.java
index dad0f71c6f..6537770b40 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalHaving.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalHaving.java
@@ -80,14 +80,10 @@ public class LogicalHaving<CHILD_TYPE extends Plan> extends
LogicalUnary<CHILD_T
return new LogicalHaving<>(conjuncts, groupExpression,
Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalHaving<>(conjuncts, Optional.empty(),
logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalHaving<>(conjuncts, groupExpression,
logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalIntersect.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalIntersect.java
index 41f9c81a2a..5d9b910916 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalIntersect.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalIntersect.java
@@ -71,12 +71,6 @@ public class LogicalIntersect extends LogicalSetOperation {
Optional.of(getLogicalProperties()), children);
}
- @Override
- public LogicalIntersect withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalIntersect(qualifier, outputs,
- Optional.empty(), logicalProperties, children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJdbcScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJdbcScan.java
index 775cfedfd8..ee12dc521a 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJdbcScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJdbcScan.java
@@ -73,12 +73,6 @@ public class LogicalJdbcScan extends LogicalRelation {
Optional.of(getLogicalProperties()));
}
- @Override
- public LogicalJdbcScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalJdbcScan(id, table, qualifier, groupExpression,
- logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJoin.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJoin.java
index 6492d9f9bf..5a6d53a792 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJoin.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalJoin.java
@@ -261,15 +261,10 @@ public class LogicalJoin<LEFT_CHILD_TYPE extends Plan,
RIGHT_CHILD_TYPE extends
groupExpression, Optional.of(getLogicalProperties()), left(),
right(), joinReorderContext);
}
- @Override
- public LogicalJoin<Plan, Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalJoin<>(joinType, hashJoinConjuncts,
otherJoinConjuncts, hint, markJoinSlotReference,
- Optional.empty(), logicalProperties, left(), right(),
joinReorderContext);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 2);
return new LogicalJoin<>(joinType, hashJoinConjuncts,
otherJoinConjuncts, hint, markJoinSlotReference,
groupExpression, logicalProperties, children.get(0),
children.get(1), joinReorderContext);
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalLimit.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalLimit.java
index dd6f02e68e..48b89e761d 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalLimit.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalLimit.java
@@ -121,14 +121,10 @@ public class LogicalLimit<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD_TY
return new LogicalLimit<>(limit, offset, phase, groupExpression,
Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalLimit<>(limit, offset, phase, Optional.empty(),
logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalLimit<>(limit, offset, phase, groupExpression,
logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapScan.java
index ecd3c10ffe..ffd69a94e5 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapScan.java
@@ -229,14 +229,6 @@ public class LogicalOlapScan extends LogicalRelation
implements CatalogRelation,
hints, cacheSlotWithSlotName);
}
- @Override
- public LogicalOlapScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalOlapScan(id, (Table) table, qualifier,
Optional.empty(), logicalProperties,
- selectedPartitionIds, partitionPruned, selectedTabletIds,
- selectedIndexId, indexSelected, preAggStatus,
manuallySpecifiedPartitions,
- hints, cacheSlotWithSlotName);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapTableSink.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapTableSink.java
index ab5dd01d78..e1469397e0 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapTableSink.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOlapTableSink.java
@@ -121,12 +121,6 @@ public class LogicalOlapTableSink<CHILD_TYPE extends Plan>
extends LogicalUnary<
Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalOlapTableSink<>(database, targetTable, cols,
partitionIds, groupExpression,
- logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOneRowRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOneRowRelation.java
index 27ed333233..575c13b75b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOneRowRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalOneRowRelation.java
@@ -79,11 +79,6 @@ public class LogicalOneRowRelation extends LogicalLeaf
implements OneRowRelation
return new LogicalOneRowRelation(projects, groupExpression,
Optional.of(getLogicalProperties()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalOneRowRelation(projects, Optional.empty(),
logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalPartitionTopN.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalPartitionTopN.java
index d9c5f47693..3c6da5534a 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalPartitionTopN.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalPartitionTopN.java
@@ -188,15 +188,10 @@ public class LogicalPartitionTopN<CHILD_TYPE extends
Plan> extends LogicalUnary<
groupExpression, Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalPartitionTopN<Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalPartitionTopN<>(function, partitionKeys, orderKeys,
hasGlobalLimit, partitionLimit,
- Optional.empty(), logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalPartitionTopN<>(function, partitionKeys, orderKeys,
hasGlobalLimit, partitionLimit,
groupExpression, logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalProject.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalProject.java
index 6c809173ca..2d1e2db3cc 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalProject.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalProject.java
@@ -181,15 +181,10 @@ public class LogicalProject<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD_
groupExpression, Optional.of(getLogicalProperties()), child(),
isDistinct);
}
- @Override
- public LogicalProject<Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalProject<>(projects, excepts, canEliminate,
Optional.empty(), logicalProperties, child(),
- isDistinct);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalProject<>(projects, excepts, canEliminate,
groupExpression, logicalProperties, children.get(0),
isDistinct);
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRepeat.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRepeat.java
index 9e3241f072..6c4dc30631 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRepeat.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRepeat.java
@@ -149,15 +149,10 @@ public class LogicalRepeat<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD_T
Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalRepeat<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalRepeat<>(groupingSets, outputExpressions,
Optional.empty(),
- logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalRepeat<>(groupingSets, outputExpressions,
groupExpression, logicalProperties,
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSchemaScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSchemaScan.java
index 47a53ee703..1b0e51d17b 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSchemaScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSchemaScan.java
@@ -60,11 +60,6 @@ public class LogicalSchemaScan extends LogicalRelation
implements Scan {
return new LogicalSchemaScan(id, table, qualifier, groupExpression,
Optional.of(getLogicalProperties()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalSchemaScan(id, table, qualifier, groupExpression,
logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSelectHint.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSelectHint.java
index 2444a2fe3f..260d29a1ab 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSelectHint.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSelectHint.java
@@ -48,11 +48,6 @@ public class LogicalSelectHint<CHILD_TYPE extends Plan>
extends LogicalUnary<CHI
this(hints, Optional.empty(), Optional.empty(), child);
}
- public LogicalSelectHint(Map<String, SelectHint> hints,
- Optional<LogicalProperties> logicalProperties, CHILD_TYPE child) {
- this(hints, Optional.empty(), logicalProperties, child);
- }
-
/**
* LogicalSelectHint's full parameter constructor.
* @param hints hint maps, key is hint name, e.g. 'SET_VAR', and value is
parameter pairs, e.g. query_time=100
@@ -79,7 +74,7 @@ public class LogicalSelectHint<CHILD_TYPE extends Plan>
extends LogicalUnary<CHI
@Override
public <R, C> R accept(PlanVisitor<R, C> visitor, C context) {
- return visitor.visitLogicalSelectHint((LogicalSelectHint<Plan>) this,
context);
+ return visitor.visitLogicalSelectHint(this, context);
}
@Override
@@ -92,14 +87,10 @@ public class LogicalSelectHint<CHILD_TYPE extends Plan>
extends LogicalUnary<CHI
return new LogicalSelectHint<>(hints, groupExpression,
Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalSelectHint<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalSelectHint<>(hints, Optional.empty(),
logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalSelectHint<>(hints, groupExpression,
logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSort.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSort.java
index 569c895df7..5918422966 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSort.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSort.java
@@ -131,14 +131,10 @@ public class LogicalSort<CHILD_TYPE extends Plan> extends
LogicalUnary<CHILD_TYP
normalized);
}
- @Override
- public LogicalSort<Plan> withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalSort<>(orderKeys, Optional.empty(),
logicalProperties, child(), false);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalSort<>(orderKeys, groupExpression,
logicalProperties, children.get(0),
normalized);
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSubQueryAlias.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSubQueryAlias.java
index fd99c98f4a..53bbee0002 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSubQueryAlias.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalSubQueryAlias.java
@@ -165,15 +165,10 @@ public class LogicalSubQueryAlias<CHILD_TYPE extends
Plan> extends LogicalUnary<
Optional.of(getLogicalProperties()), child());
}
- @Override
- public LogicalSubQueryAlias<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalSubQueryAlias<>(qualifier, columnAliases,
Optional.empty(),
- logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalSubQueryAlias<>(qualifier, columnAliases,
groupExpression, logicalProperties,
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTVFRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTVFRelation.java
index 1d0fe13179..e068048d28 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTVFRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTVFRelation.java
@@ -58,11 +58,6 @@ public class LogicalTVFRelation extends LogicalRelation
implements TVFRelation {
return new LogicalTVFRelation(id, function, groupExpression,
Optional.of(getLogicalProperties()));
}
- @Override
- public LogicalTVFRelation
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new LogicalTVFRelation(id, function, Optional.empty(),
logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTopN.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTopN.java
index 3e21c46ab8..348a709176 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTopN.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTopN.java
@@ -131,14 +131,10 @@ public class LogicalTopN<CHILD_TYPE extends Plan> extends
LogicalUnary<CHILD_TYP
child());
}
- @Override
- public LogicalTopN<Plan> withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalTopN<>(orderKeys, limit, offset, Optional.empty(),
logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalTopN<>(orderKeys, limit, offset, groupExpression,
logicalProperties, children.get(0));
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalUnion.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalUnion.java
index 68e3bdcb61..d74af5a3af 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalUnion.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalUnion.java
@@ -124,12 +124,6 @@ public class LogicalUnion extends LogicalSetOperation
implements Union, OutputPr
Optional.of(getLogicalProperties()), children);
}
- @Override
- public LogicalUnion withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalUnion(qualifier, outputs, constantExprsList,
hasPushedFilter,
- Optional.empty(), logicalProperties, children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalWindow.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalWindow.java
index 76b07f7359..fcfe9906d6 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalWindow.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalWindow.java
@@ -109,15 +109,10 @@ public class LogicalWindow<CHILD_TYPE extends Plan>
extends LogicalUnary<CHILD_T
groupExpression, Optional.of(getLogicalProperties()), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalWindow<>(windowExpressions, isChecked,
- Optional.empty(), logicalProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new LogicalWindow<>(windowExpressions, isChecked,
groupExpression, logicalProperties, children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/UsingJoin.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/UsingJoin.java
index 5ae762dcbd..dd4ffbe796 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/UsingJoin.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/UsingJoin.java
@@ -116,12 +116,6 @@ public class UsingJoin<LEFT_CHILD_TYPE extends Plan,
RIGHT_CHILD_TYPE extends Pl
hashJoinConjuncts, groupExpression,
Optional.of(getLogicalProperties()), hint, markJoinSlotReference);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new UsingJoin(joinType, child(0), child(1), otherJoinConjuncts,
- hashJoinConjuncts, groupExpression, logicalProperties, hint,
markJoinSlotReference);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalAssertNumRows.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalAssertNumRows.java
index 201ff8c49b..cb1d175b39 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalAssertNumRows.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalAssertNumRows.java
@@ -115,15 +115,10 @@ public class PhysicalAssertNumRows<CHILD_TYPE extends
Plan> extends PhysicalUnar
getLogicalProperties(), physicalProperties, statistics,
child());
}
- @Override
- public PhysicalAssertNumRows<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalAssertNumRows<>(assertNumRowsElement,
Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics,
child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalAssertNumRows<>(assertNumRowsElement,
groupExpression,
logicalProperties.get(), physicalProperties, statistics,
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEAnchor.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEAnchor.java
index 4d4dd60e4f..d85a73d1b2 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEAnchor.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEAnchor.java
@@ -116,15 +116,10 @@ public class PhysicalCTEAnchor<
return new PhysicalCTEAnchor<>(cteId, groupExpression,
getLogicalProperties(), child(0), child(1));
}
- @Override
- public PhysicalCTEAnchor<Plan, Plan>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalCTEAnchor<>(cteId,
- Optional.empty(), logicalProperties.get(), child(0), child(1));
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 2);
return new PhysicalCTEAnchor<>(cteId, groupExpression,
logicalProperties.get(), children.get(0),
children.get(1));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
index 7e2fcde661..91c0f2a403 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEConsumer.java
@@ -154,12 +154,6 @@ public class PhysicalCTEConsumer extends PhysicalRelation {
groupExpression, getLogicalProperties());
}
- @Override
- public PhysicalCTEConsumer
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalCTEConsumer(cteId, consumerToProducerSlotMap,
producerToConsumerSlotMap,
- Optional.empty(), logicalProperties.get());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEProducer.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEProducer.java
index c63ce08f20..bf148b17ac 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEProducer.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalCTEProducer.java
@@ -116,11 +116,6 @@ public class PhysicalCTEProducer<CHILD_TYPE extends Plan>
extends PhysicalUnary<
return new PhysicalCTEProducer<>(cteId, projects, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalCTEProducer<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalCTEProducer<>(cteId, projects, Optional.empty(),
logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalDistribute.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalDistribute.java
index d64898dc5c..6fc7f0bd44 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalDistribute.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalDistribute.java
@@ -104,15 +104,10 @@ public class PhysicalDistribute<CHILD_TYPE extends Plan>
extends PhysicalUnary<C
return new PhysicalDistribute<>(distributionSpec, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalDistribute<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalDistribute<>(distributionSpec, Optional.empty(),
- logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalDistribute<>(distributionSpec, groupExpression,
logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEmptyRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEmptyRelation.java
index a77a5914de..d0865b83b8 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEmptyRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEmptyRelation.java
@@ -73,12 +73,6 @@ public class PhysicalEmptyRelation extends PhysicalLeaf
implements EmptyRelation
logicalPropertiesSupplier.get(), physicalProperties,
statistics);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalEmptyRelation(projects, Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEsScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEsScan.java
index eaa9459535..2dcc0bd0cc 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEsScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalEsScan.java
@@ -101,11 +101,6 @@ public class PhysicalEsScan extends PhysicalRelation {
return new PhysicalEsScan(id, table, qualifier, distributionSpec,
groupExpression, getLogicalProperties());
}
- @Override
- public PhysicalEsScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalEsScan(id, table, qualifier, distributionSpec,
groupExpression, logicalProperties.get());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalExcept.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalExcept.java
index 2b8587a77a..762d0d6d03 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalExcept.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalExcept.java
@@ -78,12 +78,6 @@ public class PhysicalExcept extends PhysicalSetOperation {
return new PhysicalExcept(qualifier, groupExpression,
getLogicalProperties(), children);
}
- @Override
- public PhysicalExcept withLogicalProperties(
- Optional<LogicalProperties> logicalProperties) {
- return new PhysicalExcept(qualifier, Optional.empty(),
logicalProperties.get(), children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFileScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFileScan.java
index bd829976ee..f9584c0c46 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFileScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFileScan.java
@@ -107,12 +107,6 @@ public class PhysicalFileScan extends PhysicalRelation {
groupExpression, getLogicalProperties(), conjuncts);
}
- @Override
- public PhysicalFileScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalFileScan(id, table, qualifier, distributionSpec,
- groupExpression, logicalProperties.get(), conjuncts);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFilter.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFilter.java
index f4c9403640..c46adff343 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFilter.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalFilter.java
@@ -113,14 +113,10 @@ public class PhysicalFilter<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHILD
return new PhysicalFilter<>(conjuncts, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalFilter<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalFilter<>(conjuncts, Optional.empty(),
logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalFilter<>(conjuncts, groupExpression,
logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalGenerate.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalGenerate.java
index e148d5b0fd..2e7d09d3f9 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalGenerate.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalGenerate.java
@@ -137,15 +137,10 @@ public class PhysicalGenerate<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHI
groupExpression, getLogicalProperties(), child());
}
- @Override
- public PhysicalGenerate<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalGenerate<>(generators, generatorOutput,
- Optional.empty(), logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalGenerate<>(generators, generatorOutput,
groupExpression, logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashAggregate.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashAggregate.java
index 2621e061aa..01c9065ab3 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashAggregate.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashAggregate.java
@@ -245,16 +245,10 @@ public class PhysicalHashAggregate<CHILD_TYPE extends
Plan> extends PhysicalUnar
aggregateParam, maybeUsingStream, groupExpression,
getLogicalProperties(), requireProperties, child());
}
- @Override
- public PhysicalHashAggregate<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalHashAggregate<>(groupByExpressions,
outputExpressions, partitionExpressions,
- aggregateParam, maybeUsingStream, Optional.empty(),
logicalProperties.get(),
- requireProperties, child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalHashAggregate<>(groupByExpressions,
outputExpressions, partitionExpressions,
aggregateParam, maybeUsingStream, groupExpression,
logicalProperties.get(),
requireProperties, children.get(0));
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashJoin.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashJoin.java
index edba3fb717..c8ed9ec8ed 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashJoin.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalHashJoin.java
@@ -175,16 +175,10 @@ public class PhysicalHashJoin<
groupExpression, getLogicalProperties(), left(), right());
}
- @Override
- public PhysicalHashJoin<LEFT_CHILD_TYPE, RIGHT_CHILD_TYPE>
withLogicalProperties(
- Optional<LogicalProperties> logicalProperties) {
- return new PhysicalHashJoin<>(joinType, hashJoinConjuncts,
otherJoinConjuncts, hint, markJoinSlotReference,
- Optional.empty(), logicalProperties.get(), left(), right());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 2);
return new PhysicalHashJoin<>(joinType, hashJoinConjuncts,
otherJoinConjuncts, hint, markJoinSlotReference,
groupExpression, logicalProperties.get(), children.get(0),
children.get(1));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalIntersect.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalIntersect.java
index 5bf7b43e49..3df464e33f 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalIntersect.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalIntersect.java
@@ -78,12 +78,6 @@ public class PhysicalIntersect extends PhysicalSetOperation {
return new PhysicalIntersect(qualifier, groupExpression,
getLogicalProperties(), children);
}
- @Override
- public PhysicalIntersect withLogicalProperties(
- Optional<LogicalProperties> logicalProperties) {
- return new PhysicalIntersect(qualifier, Optional.empty(),
logicalProperties.get(), children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalJdbcScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalJdbcScan.java
index 31319cff6d..dd98dd7452 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalJdbcScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalJdbcScan.java
@@ -101,11 +101,6 @@ public class PhysicalJdbcScan extends PhysicalRelation {
return new PhysicalJdbcScan(id, table, qualifier, distributionSpec,
groupExpression, getLogicalProperties());
}
- @Override
- public PhysicalJdbcScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalJdbcScan(id, table, qualifier, distributionSpec,
groupExpression, logicalProperties.get());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalLimit.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalLimit.java
index 4aef608d1b..dd4e6388cf 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalLimit.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalLimit.java
@@ -117,14 +117,10 @@ public class PhysicalLimit<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHILD_
return new PhysicalLimit<>(limit, offset, phase, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalLimit<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalLimit<>(limit, offset, phase,
logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalLimit<>(limit, offset, phase, groupExpression,
logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalNestedLoopJoin.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalNestedLoopJoin.java
index f42cfe0924..5ba9f60a86 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalNestedLoopJoin.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalNestedLoopJoin.java
@@ -140,17 +140,10 @@ public class PhysicalNestedLoopJoin<
groupExpression, getLogicalProperties(), left(), right());
}
- @Override
- public PhysicalNestedLoopJoin<LEFT_CHILD_TYPE, RIGHT_CHILD_TYPE>
withLogicalProperties(
- Optional<LogicalProperties> logicalProperties) {
- return new PhysicalNestedLoopJoin<>(joinType,
- hashJoinConjuncts, otherJoinConjuncts, markJoinSlotReference,
Optional.empty(),
- logicalProperties.get(), left(), right());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 2);
return new PhysicalNestedLoopJoin<>(joinType,
hashJoinConjuncts, otherJoinConjuncts, markJoinSlotReference,
groupExpression,
logicalProperties.get(), children.get(0), children.get(1));
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapScan.java
index b7beeb976f..87823d9bc7 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapScan.java
@@ -157,13 +157,6 @@ public class PhysicalOlapScan extends PhysicalRelation
implements OlapScan {
groupExpression, getLogicalProperties());
}
- @Override
- public PhysicalOlapScan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalOlapScan(id, olapTable, qualifier, selectedIndexId,
selectedTabletIds,
- selectedPartitionIds, distributionSpec, preAggStatus,
baseOutputs, Optional.empty(),
- logicalProperties.get());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapTableSink.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapTableSink.java
index 40cfc65768..915c1eec70 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapTableSink.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOlapTableSink.java
@@ -173,12 +173,6 @@ public class PhysicalOlapTableSink<CHILD_TYPE extends
Plan> extends PhysicalUnar
groupExpression, getLogicalProperties(), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalOlapTableSink<>(database, targetTable,
partitionIds, cols, singleReplicaLoad,
- groupExpression, logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOneRowRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOneRowRelation.java
index 6cc6c3f4d1..00328f739e 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOneRowRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalOneRowRelation.java
@@ -77,12 +77,6 @@ public class PhysicalOneRowRelation extends PhysicalLeaf
implements OneRowRelati
logicalPropertiesSupplier.get(), physicalProperties,
statistics);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalOneRowRelation(projects, Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPartitionTopN.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPartitionTopN.java
index 9c0e290ff5..a64528ea9f 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPartitionTopN.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPartitionTopN.java
@@ -161,12 +161,6 @@ public class PhysicalPartitionTopN<CHILD_TYPE extends
Plan> extends PhysicalUnar
groupExpression, getLogicalProperties(), child());
}
- @Override
- public PhysicalPartitionTopN<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalPartitionTopN<>(function, partitionKeys, orderKeys,
hasGlobalLimit, partitionLimit,
- Optional.empty(), logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalProject.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalProject.java
index 1131056c2d..6c36045df4 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalProject.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalProject.java
@@ -103,7 +103,7 @@ public class PhysicalProject<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHIL
@Override
public PhysicalProject<Plan> withChildren(List<Plan> children) {
Preconditions.checkArgument(children.size() == 1);
- return new PhysicalProject<Plan>(projects,
+ return new PhysicalProject<>(projects,
groupExpression,
getLogicalProperties(),
physicalProperties,
@@ -117,14 +117,10 @@ public class PhysicalProject<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHIL
return new PhysicalProject<>(projects, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalProject<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalProject<>(projects, Optional.empty(),
logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalProject<>(projects, groupExpression,
logicalProperties.get(), children.get(0));
}
@@ -142,12 +138,12 @@ public class PhysicalProject<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHIL
* @return new project
*/
public PhysicalProject<Plan> withProjectionsAndChild(List<NamedExpression>
projections, Plan child) {
- return new PhysicalProject<Plan>(ImmutableList.copyOf(projections),
+ return new PhysicalProject<>(ImmutableList.copyOf(projections),
groupExpression,
getLogicalProperties(),
physicalProperties,
statistics,
child
- );
+ );
}
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalQuickSort.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalQuickSort.java
index ea5fa4e723..c2ca598ab6 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalQuickSort.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalQuickSort.java
@@ -84,14 +84,10 @@ public class PhysicalQuickSort<CHILD_TYPE extends Plan>
extends AbstractPhysical
return new PhysicalQuickSort<>(orderKeys, phase, groupExpression,
getLogicalProperties(), child());
}
- @Override
- public PhysicalQuickSort<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalQuickSort<>(orderKeys, phase, Optional.empty(),
logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalQuickSort<>(orderKeys, phase, groupExpression,
logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRepeat.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRepeat.java
index cfe423a9f6..258b99e128 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRepeat.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRepeat.java
@@ -157,15 +157,10 @@ public class PhysicalRepeat<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHILD
getLogicalProperties(), physicalProperties, statistics,
child());
}
- @Override
- public PhysicalRepeat<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalRepeat<>(groupingSets, outputExpressions,
Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics,
child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalRepeat<>(groupingSets, outputExpressions,
groupExpression,
logicalProperties.get(), physicalProperties, statistics,
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalSchemaScan.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalSchemaScan.java
index 666a50252c..44e85777c0 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalSchemaScan.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalSchemaScan.java
@@ -69,12 +69,6 @@ public class PhysicalSchemaScan extends PhysicalRelation
implements Scan {
statistics);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalSchemaScan(id, table, qualifier, groupExpression,
logicalProperties.get(),
- physicalProperties, statistics);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalStorageLayerAggregate.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalStorageLayerAggregate.java
index cc865c9e87..ed57eebcb0 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalStorageLayerAggregate.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalStorageLayerAggregate.java
@@ -122,12 +122,6 @@ public class PhysicalStorageLayerAggregate extends
PhysicalRelation {
physicalProperties, statistics);
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalStorageLayerAggregate(relation, aggOp,
Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTVFRelation.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTVFRelation.java
index 776714a696..dfe5ad1168 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTVFRelation.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTVFRelation.java
@@ -61,12 +61,6 @@ public class PhysicalTVFRelation extends PhysicalRelation
implements TVFRelation
physicalProperties, statistics);
}
- @Override
- public PhysicalTVFRelation
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalTVFRelation(id, function, Optional.empty(),
- logicalProperties.get(), physicalProperties, statistics);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTopN.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTopN.java
index 461cce9fab..559f7f2d0c 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTopN.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTopN.java
@@ -119,14 +119,10 @@ public class PhysicalTopN<CHILD_TYPE extends Plan>
extends AbstractPhysicalSort<
return new PhysicalTopN<>(orderKeys, limit, offset, phase,
groupExpression, getLogicalProperties(), child());
}
- @Override
- public PhysicalTopN<CHILD_TYPE>
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return new PhysicalTopN<>(orderKeys, limit, offset, phase,
Optional.empty(), logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkArgument(children.size() == 1);
return new PhysicalTopN<>(orderKeys, limit, offset, phase,
groupExpression, logicalProperties.get(),
children.get(0));
}
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalUnion.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalUnion.java
index ac6dbe5e3e..c44dda6a3f 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalUnion.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalUnion.java
@@ -99,12 +99,6 @@ public class PhysicalUnion extends PhysicalSetOperation
implements Union {
return new PhysicalUnion(qualifier, constantExprsList,
groupExpression, getLogicalProperties(), children);
}
- @Override
- public PhysicalUnion withLogicalProperties(
- Optional<LogicalProperties> logicalProperties) {
- return new PhysicalUnion(qualifier, constantExprsList,
Optional.empty(), logicalProperties.get(), children);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalWindow.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalWindow.java
index bd06792655..fe5559940e 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalWindow.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalWindow.java
@@ -137,15 +137,10 @@ public class PhysicalWindow<CHILD_TYPE extends Plan>
extends PhysicalUnary<CHILD
getLogicalProperties(), child());
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new PhysicalWindow<>(windowFrameGroup, requireProperties,
Optional.empty(),
- logicalProperties.get(), child());
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
+ Preconditions.checkState(children.size() == 1);
return new PhysicalWindow<>(windowFrameGroup, requireProperties,
groupExpression,
logicalProperties.get(), children.get(0));
}
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/RewriteTopDownJobTest.java
b/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/RewriteTopDownJobTest.java
index 7a8aba1bbe..8eb03d5b65 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/RewriteTopDownJobTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/RewriteTopDownJobTest.java
@@ -118,11 +118,6 @@ public class RewriteTopDownJobTest {
return new LogicalBoundRelation(table, qualifier, groupExpression,
Optional.of(getLogicalProperties()));
}
- @Override
- public Plan withLogicalProperties(Optional<LogicalProperties>
logicalProperties) {
- return new LogicalBoundRelation(table, qualifier,
Optional.empty(), logicalProperties);
- }
-
@Override
public Plan withGroupExprLogicalPropChildren(Optional<GroupExpression>
groupExpression,
Optional<LogicalProperties> logicalProperties, List<Plan>
children) {
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/cascades/DeriveStatsJobTest.java
b/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/cascades/DeriveStatsJobTest.java
index 3fff39d2de..e4c031e4a8 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/cascades/DeriveStatsJobTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/cascades/DeriveStatsJobTest.java
@@ -81,8 +81,9 @@ public class DeriveStatsJobTest {
}};
OlapTable table1 = PlanConstructor.newOlapTable(tableId1, "t1", 0);
- return new LogicalOlapScan(RelationUtil.newRelationId(), table1,
Collections.emptyList()).withLogicalProperties(
- Optional.of(new LogicalProperties(() ->
ImmutableList.of(slot1))));
+ return (LogicalOlapScan) new
LogicalOlapScan(RelationUtil.newRelationId(), table1,
+
Collections.emptyList()).withGroupExprLogicalPropChildren(Optional.empty(),
+ Optional.of(new LogicalProperties(() ->
ImmutableList.of(slot1))), ImmutableList.of());
}
private LogicalAggregate constructAgg(Plan child) {
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/nereids/stats/StatsCalculatorTest.java
b/fe/fe-core/src/test/java/org/apache/doris/nereids/stats/StatsCalculatorTest.java
index 8b928f4215..63365901a8 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/nereids/stats/StatsCalculatorTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/nereids/stats/StatsCalculatorTest.java
@@ -252,8 +252,9 @@ public class StatsCalculatorTest {
SlotReference slot1 = new SlotReference("c1", IntegerType.INSTANCE,
true, qualifier);
OlapTable table1 = PlanConstructor.newOlapTable(tableId1, "t1", 0);
- LogicalOlapScan logicalOlapScan1 = new
LogicalOlapScan(RelationUtil.newRelationId(), table1, Collections.emptyList())
- .withLogicalProperties(Optional.of(new LogicalProperties(() ->
ImmutableList.of(slot1))));
+ LogicalOlapScan logicalOlapScan1 = (LogicalOlapScan) new
LogicalOlapScan(RelationUtil.newRelationId(), table1,
+
Collections.emptyList()).withGroupExprLogicalPropChildren(Optional.empty(),
+ Optional.of(new LogicalProperties(() ->
ImmutableList.of(slot1))), ImmutableList.of());
Group childGroup = newGroup();
GroupExpression groupExpression = new
GroupExpression(logicalOlapScan1, ImmutableList.of(childGroup));
Group ownerGroup = newGroup();
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/PlanOutputTest.java
b/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/PlanOutputTest.java
index 93d3ea6234..eb508f53c9 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/PlanOutputTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/PlanOutputTest.java
@@ -69,20 +69,6 @@ public class PlanOutputTest {
}
}
- @Test
- public void testWithOutput() {
- LogicalOlapScan relationPlan = PlanConstructor.newLogicalOlapScan(0,
"a", 0);
-
- List<Slot> output = relationPlan.getOutput();
- // column prune
- Plan newPlan =
relationPlan.withOutput(ImmutableList.of(output.get(0)));
- output = newPlan.getOutput();
- Assertions.assertEquals(1, output.size());
- Assertions.assertEquals(output.get(0).getName(), "id");
- Assertions.assertEquals(output.get(0).getQualifiedName(), "db.a.id");
- Assertions.assertEquals(output.get(0).getDataType(),
IntegerType.INSTANCE);
- }
-
@Test
public void testPhysicalPlanMustHaveLogicalProperties() {
Assertions.assertThrows(NullPointerException.class, () ->
@@ -93,11 +79,6 @@ public class PlanOutputTest {
return null;
}
- @Override
- public Plan
withLogicalProperties(Optional<LogicalProperties> logicalProperties) {
- return null;
- }
-
@Override
public Plan
withGroupExprLogicalPropChildren(Optional<GroupExpression> groupExpression,
Optional<LogicalProperties> logicalProperties,
List<Plan> children) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]