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 5af00a127e2ecc..5f3bf4c1b1e7ae 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 @@ -835,6 +835,11 @@ public void finalizeQuery() { private void handleQueryWithRetry(TUniqueId queryId) throws Exception { // queue query here int retryTime = Config.max_query_retry_time; + // If the query is an `outfile` statement, + // we execute it only once to avoid exporting redundant data. + if (parsedStmt instanceof Queriable) { + retryTime = ((Queriable) parsedStmt).hasOutFileClause() ? 1 : retryTime; + } for (int i = 0; i < retryTime; i++) { try { // reset query id for each retry