From 26d642d5e93e890c732720c6aa3805358fcc8aa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A2=E5=81=A5?= Date: Tue, 5 Dec 2023 11:45:03 +0800 Subject: [PATCH] [enhancement](Nereids) format some code in functional deps (#27797) --- .../jobs/joinorder/hypergraph/receiver/PlanReceiver.java | 5 +++-- .../doris/nereids/properties/FunctionalDependencies.java | 4 ++-- .../nereids/trees/plans/logical/LogicalCatalogRelation.java | 5 +++-- .../nereids/trees/plans/logical/LogicalCheckPolicy.java | 4 ++-- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/joinorder/hypergraph/receiver/PlanReceiver.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/joinorder/hypergraph/receiver/PlanReceiver.java index 2eb386ce21..c1a830faa9 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/joinorder/hypergraph/receiver/PlanReceiver.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/joinorder/hypergraph/receiver/PlanReceiver.java @@ -49,6 +49,7 @@ import org.apache.doris.nereids.util.JoinUtils; import org.apache.doris.nereids.util.PlanUtils; import org.apache.doris.qe.ConnectContext; +import cfjd.com.google.common.collect.ImmutableList; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; @@ -380,8 +381,8 @@ public class PlanReceiver implements AbstractReceiver { if (!outputSet.equals(new HashSet<>(projects))) { LogicalProperties projectProperties = new LogicalProperties( () -> projects.stream() - .map(p -> p.toSlot()) - .collect(Collectors.toList()), () -> FunctionalDependencies.EMPTY_FUNC_DEPS); + .map(NamedExpression::toSlot) + .collect(ImmutableList.toImmutableList()), () -> FunctionalDependencies.EMPTY_FUNC_DEPS); allChild = allChild.stream() .map(c -> new PhysicalProject<>(projects, projectProperties, c)) .collect(Collectors.toList()); diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/FunctionalDependencies.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/FunctionalDependencies.java index 73a78b0da2..c2ba22b5dc 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/FunctionalDependencies.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/properties/FunctionalDependencies.java @@ -32,6 +32,7 @@ import java.util.stream.Collectors; * 2. uniform slotL it means the column that has ndv = 1, can be null */ public class FunctionalDependencies { + public static final FunctionalDependencies EMPTY_FUNC_DEPS = new FunctionalDependencies(new NestedSet().toImmutable(), new NestedSet().toImmutable()); private final NestedSet uniqueSet; @@ -81,8 +82,7 @@ public class FunctionalDependencies { @Override public String toString() { - return "uniform:" + uniformSet - + "\t unique:" + uniqueSet; + return String.format("FuncDeps[uniform:%s, unique:%s]", uniformSet, uniqueSet); } /** diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCatalogRelation.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCatalogRelation.java index a2c2c68ddc..ed1e6a588b 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCatalogRelation.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalCatalogRelation.java @@ -125,8 +125,9 @@ public abstract class LogicalCatalogRelation extends LogicalRelation implements if (table instanceof OlapTable && ((OlapTable) table).getKeysType().isAggregationFamily()) { ImmutableSet slotSet = computeOutput().stream() .filter(SlotReference.class::isInstance) - .filter(s -> ((SlotReference) s).getColumn().isPresent() - && ((SlotReference) s).getColumn().get().isKey()) + .map(SlotReference.class::cast) + .filter(s -> s.getColumn().isPresent() + && s.getColumn().get().isKey()) .collect(ImmutableSet.toImmutableSet()); fdBuilder.addUniqueSlot(slotSet); } 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 12250bb7d7..5630153c0c 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 @@ -47,8 +47,8 @@ import java.util.Optional; /** * Logical Check Policy */ -public class LogicalCheckPolicy extends LogicalUnary implements - PropagateFuncDeps { +public class LogicalCheckPolicy extends LogicalUnary + implements PropagateFuncDeps { public LogicalCheckPolicy(CHILD_TYPE child) { super(PlanType.LOGICAL_CHECK_POLICY, child);