From 083e45bd914c03f4f0b8f1966b396d0199928c38 Mon Sep 17 00:00:00 2001 From: gwang3 Date: Sun, 7 Jan 2018 15:24:02 +0800 Subject: [PATCH] improve the way to delete a job --- .../main/java/org/apache/kylin/rest/service/JobService.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java index e518837b4..da604170b 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java +++ b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java @@ -629,9 +629,17 @@ public class JobService extends BasicService implements InitializingBean { return job; } - public void dropJob(JobInstance job) throws IOException { + public void dropJob(JobInstance job) { aclEvaluate.checkProjectOperationPermission(job); + if (job.getRelatedCube() != null && getCubeManager().getCube(job.getRelatedCube()) != null) { + if (job.getStatus() != JobStatusEnum.FINISHED && job.getStatus() != JobStatusEnum.DISCARDED) { + throw new BadRequestException( + "Only FINISHED and DISCARDED job can be deleted. Please wait for the job finishing or discard the job!!!"); + } + } getExecutableManager().deleteJob(job.getId()); + logger.info("Delete job [" + job.getId() + "] trigger by + " + + SecurityContextHolder.getContext().getAuthentication().getName()); } /** -- 2.14.3 (Apple Git-98)