From 552a5c163281f7290f4cfaebdcbe1215dcf24a74 Mon Sep 17 00:00:00 2001 From: zhangdong <493738387@qq.com> Date: Wed, 20 Dec 2023 17:08:38 +0800 Subject: [PATCH] [fix](mtmv) fix insert overwrite getExecTimeout error (#28700) should use InsertTimeout but QueryTimeout --- .../java/org/apache/doris/job/extensions/mtmv/MTMVTask.java | 1 + .../src/main/java/org/apache/doris/qe/StmtExecutor.java | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java index e13b45885d..115d4eba30 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java +++ b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java @@ -175,6 +175,7 @@ public class MTMVTask extends AbstractTask { .from(mtmv, mtmv.getMvPartitionInfo().getPartitionType() == MTMVPartitionType.FOLLOW_BASE_TABLE ? refreshPartitionIds : Sets.newHashSet(), tableWithPartKey); executor = new StmtExecutor(ctx, new LogicalPlanAdapter(command, ctx.getStatementContext())); + ctx.setExecutor(executor); ctx.setQueryId(queryId); command.run(ctx, executor); if (ctx.getState().getStateType() != MysqlStateType.OK) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java index 0e32d27b4d..3556ae311b 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java @@ -127,6 +127,7 @@ import org.apache.doris.nereids.trees.plans.commands.Command; import org.apache.doris.nereids.trees.plans.commands.CreateTableCommand; import org.apache.doris.nereids.trees.plans.commands.Forward; import org.apache.doris.nereids.trees.plans.commands.InsertIntoTableCommand; +import org.apache.doris.nereids.trees.plans.commands.InsertOverwriteTableCommand; import org.apache.doris.nereids.trees.plans.commands.NotAllowFallback; import org.apache.doris.nereids.trees.plans.logical.LogicalPlan; import org.apache.doris.planner.GroupCommitPlanner; @@ -402,10 +403,12 @@ public class StmtExecutor { if (parsedStmt instanceof LogicalPlanAdapter) { LogicalPlan logicalPlan = ((LogicalPlanAdapter) parsedStmt).getLogicalPlan(); return logicalPlan instanceof InsertIntoTableCommand + || logicalPlan instanceof InsertOverwriteTableCommand || (logicalPlan instanceof CreateTableCommand && ((CreateTableCommand) logicalPlan).isCtasCommand()); } - return parsedStmt instanceof InsertStmt || parsedStmt instanceof CreateTableAsSelectStmt; + return parsedStmt instanceof InsertStmt || parsedStmt instanceof InsertOverwriteTableStmt + || parsedStmt instanceof CreateTableAsSelectStmt; } public boolean isAnalyzeStmt() {