From ba7b7c1f60ad532dcad9a1fc8c3654856db4a342 Mon Sep 17 00:00:00 2001 From: Calvin Kirs Date: Thu, 28 Dec 2023 15:40:16 +0800 Subject: [PATCH] [Chore](Job)It is forbidden to change the status of internal JOB through PAUSE/RESUME (#29036) --- .../java/org/apache/doris/analysis/AlterJobStatusStmt.java | 4 +++- .../main/java/org/apache/doris/analysis/CreateJobStmt.java | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java index 09f135d2fb..16077cc260 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AlterJobStatusStmt.java @@ -58,6 +58,8 @@ public class AlterJobStatusStmt extends DdlStmt { throw new AnalysisException("Value can't is null"); } this.jobName = inputValue; - + if (CreateJobStmt.isInnerJob(jobName)) { + throw new AnalysisException("Can't alter inner job status"); + } } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java index ef76aedba2..17e2185bf5 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateJobStmt.java @@ -85,7 +85,7 @@ public class CreateJobStmt extends DdlStmt { private JobExecuteType executeType; // exclude job name prefix, which is used by inner job - private final String excludeJobNamePrefix = "inner_"; + private static final String excludeJobNamePrefix = "inner_"; private static final ImmutableSet> supportStmtSuperClass = new ImmutableSet.Builder>().add(InsertStmt.class) @@ -208,4 +208,8 @@ public class CreateJobStmt extends DdlStmt { } return executeSql; } + + protected static boolean isInnerJob(String jobName) { + return jobName.startsWith(excludeJobNamePrefix); + } }