This is an automated email from the ASF dual-hosted git repository. dataroaring pushed a commit to branch branch-3.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit bc7fa2f045b973ae5541b24be1926325b1d40209 Author: seawinde <149132972+seawi...@users.noreply.github.com> AuthorDate: Tue Aug 27 10:10:49 2024 +0800 [fix](mtmv) Add debug log decide for performance when query rewrite by materialized view (#39914) ## Proposed changes In method `AbstractMaterializedViewRule#isMaterializationValid` Should add `LOG.isDebugEnabled()` before print debug log. Because `Plan#treeString` in debug log is performance consume. --- .../mv/AbstractMaterializedViewRule.java | 30 +++++++++++++--------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/mv/AbstractMaterializedViewRule.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/mv/AbstractMaterializedViewRule.java index 857fd0e51b9..9fef549c0a7 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/mv/AbstractMaterializedViewRule.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/mv/AbstractMaterializedViewRule.java @@ -853,10 +853,12 @@ public abstract class AbstractMaterializedViewRule implements ExplorationRuleFac "View struct info is invalid", () -> String.format("view plan is %s", context.getStructInfo().getOriginalPlan().treeString())); // tmp to location question - LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," - + "view plan is %s", - context.generateMaterializationIdentifier(), queryPlan.treeString(), - context.getStructInfo().getTopPlan().treeString())); + if (LOG.isDebugEnabled()) { + LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," + + "view plan is %s", + context.generateMaterializationIdentifier(), queryPlan.treeString(), + context.getStructInfo().getTopPlan().treeString())); + } cascadesContext.getMemo().recordMaterializationCheckResult(this.getClass(), materializationId, false); return false; @@ -868,20 +870,24 @@ public abstract class AbstractMaterializedViewRule implements ExplorationRuleFac context.recordFailReason(context.getStructInfo(), "View struct info is invalid", () -> String.format("view plan is %s", context.getStructInfo().getOriginalPlan().treeString())); - LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," - + "view plan is %s", - context.generateMaterializationIdentifier(), queryPlan.treeString(), - context.getStructInfo().getTopPlan().treeString())); + if (LOG.isDebugEnabled()) { + LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," + + "view plan is %s", + context.generateMaterializationIdentifier(), queryPlan.treeString(), + context.getStructInfo().getTopPlan().treeString())); + } return false; } if (!context.getStructInfo().isValid()) { context.recordFailReason(context.getStructInfo(), "View original struct info is invalid", () -> String.format("view plan is %s", context.getStructInfo().getOriginalPlan().treeString())); - LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," - + "view plan is %s", - context.generateMaterializationIdentifier(), queryPlan.treeString(), - context.getStructInfo().getTopPlan().treeString())); + if (LOG.isDebugEnabled()) { + LOG.debug(String.format("View struct info is invalid, mv identifier is %s, query plan is %s," + + "view plan is %s", + context.generateMaterializationIdentifier(), queryPlan.treeString(), + context.getStructInfo().getTopPlan().treeString())); + } return false; } return true; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org