diff --git a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java index b384c35ebdd61b..73eb9ce8efdadf 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java +++ b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java @@ -210,8 +210,14 @@ public void run() throws JobException { return; } command.runWithUpdateInfo(ctx, stmtExecutor, loadStatistic); - if (ctx.getState().getStateType() != QueryState.MysqlStateType.OK) { - throw new JobException(ctx.getState().getErrorMessage()); + ConnectContext localCtx = ctx; + if (isCanceled.get()) { + log.info("task has been canceled during execution, task id is {}", getTaskId()); + return; + } + QueryState state = localCtx.getState(); + if (localCtx.getState().getStateType() != QueryState.MysqlStateType.OK) { + throw new JobException(state.getErrorMessage()); } } catch (Exception e) { log.warn("execute insert task error, job id is {}, task id is {},sql is {}", getJobId(),