This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 22962c3b15a73a2769dc966eac6d4a64c4a10dc5 Author: Siyang Tang <[email protected]> AuthorDate: Mon Oct 23 14:57:02 2023 +0800 [enhancement](stmt-exec) make CTAS use insert timeout fix forward timeout (#25731) --- fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java | 4 ++-- fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java index 90d04c8a2dd..cfb41d3b819 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ConnectContext.java @@ -660,7 +660,7 @@ public class ConnectContext { } else { String timeoutTag = "query"; // insert stmt particularly - if (executor != null && executor.isInsertStmt()) { + if (executor != null && executor.isSyncLoadKindStmt()) { timeoutTag = "insert"; } //to ms @@ -714,7 +714,7 @@ public class ConnectContext { * @return exact execution timeout */ public int getExecTimeout() { - if (executor != null && executor.isInsertStmt()) { + if (executor != null && executor.isSyncLoadKindStmt()) { // particular for insert stmt, we can expand other type of timeout in the same way return Math.max(sessionVariable.getInsertTimeoutS(), sessionVariable.getQueryTimeoutS()); } else if (executor != null && executor.isAnalyzeStmt()) { 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 5dcb392fb62..24e8f553a8e 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 @@ -121,6 +121,7 @@ import org.apache.doris.nereids.minidump.MinidumpUtils; import org.apache.doris.nereids.parser.NereidsParser; import org.apache.doris.nereids.stats.StatsErrorEstimator; 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.logical.LogicalPlan; @@ -386,15 +387,17 @@ public class StmtExecutor { return masterOpExecutor.getProxyStatus(); } - public boolean isInsertStmt() { + public boolean isSyncLoadKindStmt() { if (parsedStmt == null) { return false; } if (parsedStmt instanceof LogicalPlanAdapter) { LogicalPlan logicalPlan = ((LogicalPlanAdapter) parsedStmt).getLogicalPlan(); - return logicalPlan instanceof InsertIntoTableCommand; + return logicalPlan instanceof InsertIntoTableCommand + || (logicalPlan instanceof CreateTableCommand + && ((CreateTableCommand) logicalPlan).isCtasCommand()); } - return parsedStmt instanceof InsertStmt; + return parsedStmt instanceof InsertStmt || parsedStmt instanceof CreateTableAsSelectStmt; } public boolean isAnalyzeStmt() { --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
