From 0e9dd348fb397d91521210f91e63ccb5536bf7cf Mon Sep 17 00:00:00 2001 From: Pxl Date: Fri, 1 Sep 2023 14:46:54 +0800 Subject: [PATCH] [Improvment](materialized-view) add short circuit for selectBestMV #23743 --- .../org/apache/doris/planner/MaterializedViewSelector.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/planner/MaterializedViewSelector.java b/fe/fe-core/src/main/java/org/apache/doris/planner/MaterializedViewSelector.java index d9c69111ae..a06e09e30f 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/planner/MaterializedViewSelector.java +++ b/fe/fe-core/src/main/java/org/apache/doris/planner/MaterializedViewSelector.java @@ -125,6 +125,11 @@ public class MaterializedViewSelector { long start = System.currentTimeMillis(); Preconditions.checkState(scanNode instanceof OlapScanNode); OlapScanNode olapScanNode = (OlapScanNode) scanNode; + + if (olapScanNode.getOlapTable().getVisibleIndex().size() == 1) { + return new BestIndexInfo(olapScanNode.getOlapTable().getBaseIndexId(), isPreAggregation, reasonOfDisable); + } + Map> candidateIndexIdToSchema = predicates(olapScanNode); if (candidateIndexIdToSchema.keySet().size() == 0) { return null;