This is an automated email from the ASF dual-hosted git repository.
huajianlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 5b645437099 [fix](insert) fix insert failed when concurrent schema
change (#60182)
5b645437099 is described below
commit 5b6454370992096185c6523b522a61c405014f7a
Author: 924060929 <[email protected]>
AuthorDate: Mon Jan 26 19:45:14 2026 +0800
[fix](insert) fix insert failed when concurrent schema change (#60182)
fix insert failed when concurrent schema change because the lock scope
is small, introduced by #45045.
```
2025-12-22 18:31:27,916 WARN (mysql-nio-pool-20|395)
[StmtExecutor.execute():546] Analyze failed. stmt[223,
6daf515a262f4708-959e9e3ef4590797]
org.apache.doris.common.NereidsException: errCode = 2, detailMessage =
insert into cols should be corresponding to the query output
at
org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:706)
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:541)
at
org.apache.doris.qe.StmtExecutor.queryRetry(StmtExecutor.java:500)
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:485)
at
org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:311)
at
org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:198)
at
org.apache.doris.qe.MysqlConnectProcessor.handleQuery(MysqlConnectProcessor.java:231)
at
org.apache.doris.qe.MysqlConnectProcessor.dispatch(MysqlConnectProcessor.java:259)
at
org.apache.doris.qe.MysqlConnectProcessor.processOnce(MysqlConnectProcessor.java:403)
at
org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: org.apache.doris.common.AnalysisException: errCode = 2,
detailMessage = insert into cols should be corresponding to the query output
... 13 more
Caused by: org.apache.doris.nereids.exceptions.AnalysisException: insert
into cols should be corresponding to the query output
at
org.apache.doris.nereids.rules.analysis.BindSink.bindOlapTableSink(BindSink.java:194)
at
org.apache.doris.nereids.pattern.PatternMatcher$1.transform(PatternMatcher.java:96)
at
org.apache.doris.nereids.jobs.rewrite.TopDownVisitorRewriteJob.doRewrite(TopDownVisitorRewriteJob.java:114)
at
org.apache.doris.nereids.jobs.rewrite.TopDownVisitorRewriteJob.rewrite(TopDownVisitorRewriteJob.java:80)
at
org.apache.doris.nereids.jobs.rewrite.TopDownVisitorRewriteJob.execute(TopDownVisitorRewriteJob.java:56)
at
org.apache.doris.nereids.jobs.rewrite.AdaptiveTopDownRewriteJob.execute(AdaptiveTopDownRewriteJob.java:41)
at
org.apache.doris.nereids.jobs.executor.AbstractBatchJobExecutor.execute(AbstractBatchJobExecutor.java:167)
at
org.apache.doris.nereids.jobs.executor.Analyzer.lambda$execute$0(Analyzer.java:98)
at
org.apache.doris.nereids.util.MoreFieldsThread.keepFunctionSignature(MoreFieldsThread.java:127)
at
org.apache.doris.nereids.jobs.executor.Analyzer.execute(Analyzer.java:97)
at
org.apache.doris.nereids.jobs.executor.Analyzer.analyze(Analyzer.java:92)
at
org.apache.doris.nereids.NereidsPlanner.lambda$analyze$4(NereidsPlanner.java:414)
at
org.apache.doris.nereids.NereidsPlanner.keepOrShowPlanProcess(NereidsPlanner.java:1109)
at
org.apache.doris.nereids.NereidsPlanner.analyze(NereidsPlanner.java:414)
at
org.apache.doris.nereids.trees.plans.commands.insert.FastInsertIntoValuesPlanner.analyze(FastInsertIntoValuesPlanner.java:63)
at
org.apache.doris.nereids.NereidsPlanner.planWithoutLock(NereidsPlanner.java:288)
at
org.apache.doris.nereids.NereidsPlanner.planWithLock(NereidsPlanner.java:263)
at
org.apache.doris.nereids.NereidsPlanner.plan(NereidsPlanner.java:162)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.planInsertExecutor(InsertIntoTableCommand.java:540)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.initPlanOnce(InsertIntoTableCommand.java:353)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.initPlan(InsertIntoTableCommand.java:259)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.initPlan(InsertIntoTableCommand.java:226)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.runInternal(InsertIntoTableCommand.java:569)
at
org.apache.doris.nereids.trees.plans.commands.insert.InsertIntoTableCommand.run(InsertIntoTableCommand.java:210)
at
org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:678)
... 12 more
```
---
.../trees/plans/commands/insert/InsertIntoTableCommand.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTableCommand.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTableCommand.java
index ba52f09d38b..1f3752e74bb 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTableCommand.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTableCommand.java
@@ -345,12 +345,13 @@ public class InsertIntoTableCommand extends Command
implements NeedAuditEncrypti
}
OlapGroupCommitInsertExecutor.analyzeGroupCommit(
ctx, targetTableIf, this.logicalQuery.get(),
this.insertCtx);
+
+ LogicalPlanAdapter logicalPlanAdapter
+ = new LogicalPlanAdapter(logicalQuery.get(),
ctx.getStatementContext());
+ return planInsertExecutor(ctx, stmtExecutor, logicalPlanAdapter,
targetTableIf);
} finally {
targetTableIf.readUnlock();
}
-
- LogicalPlanAdapter logicalPlanAdapter = new
LogicalPlanAdapter(logicalQuery.get(), ctx.getStatementContext());
- return planInsertExecutor(ctx, stmtExecutor, logicalPlanAdapter,
targetTableIf);
}
// we should select the factory type first, but we can not initial
InsertExecutor at this time,
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]