diff --git a/core/core-backend/src/main/java/io/dataease/job/schedule/DeTaskExecutor.java b/core/core-backend/src/main/java/io/dataease/job/schedule/DeTaskExecutor.java index 74766c5138..86c6620eaf 100644 --- a/core/core-backend/src/main/java/io/dataease/job/schedule/DeTaskExecutor.java +++ b/core/core-backend/src/main/java/io/dataease/job/schedule/DeTaskExecutor.java @@ -105,4 +105,8 @@ public class DeTaskExecutor { TriggerKey triggerKey = new TriggerKey(key, RETRY_JOB_GROUP); scheduleManager.removeJob(jobKey, triggerKey); } + + public void clearRetryTask() throws Exception { + scheduleManager.clearByGroup(RETRY_JOB_GROUP); + } } diff --git a/core/core-backend/src/main/java/io/dataease/job/schedule/ScheduleManager.java b/core/core-backend/src/main/java/io/dataease/job/schedule/ScheduleManager.java index 5534f0f614..e97029442a 100644 --- a/core/core-backend/src/main/java/io/dataease/job/schedule/ScheduleManager.java +++ b/core/core-backend/src/main/java/io/dataease/job/schedule/ScheduleManager.java @@ -6,12 +6,10 @@ import io.dataease.i18n.Translator; import io.dataease.utils.LogUtil; import jakarta.annotation.Resource; import org.quartz.*; +import org.quartz.impl.matchers.GroupMatcher; import org.springframework.stereotype.Component; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Component public class ScheduleManager { @@ -440,4 +438,11 @@ public class ScheduleManager { } } + public void clearByGroup(String groupName) throws Exception { + Set jobKeys = scheduler.getJobKeys(GroupMatcher.groupEquals(groupName)); + Set triggerKeys = scheduler.getTriggerKeys(GroupMatcher.groupEquals(groupName)); + scheduler.pauseTriggers(GroupMatcher.groupEquals(groupName)); + scheduler.unscheduleJobs(new ArrayList<>(triggerKeys)); + scheduler.deleteJobs(new ArrayList<>(jobKeys)); + } } diff --git a/core/core-backend/src/main/java/io/dataease/listener/XpackTaskStarter.java b/core/core-backend/src/main/java/io/dataease/listener/XpackTaskStarter.java index 0154a29f6f..70a2f022a4 100644 --- a/core/core-backend/src/main/java/io/dataease/listener/XpackTaskStarter.java +++ b/core/core-backend/src/main/java/io/dataease/listener/XpackTaskStarter.java @@ -21,6 +21,7 @@ public class XpackTaskStarter implements ApplicationRunner { try { LicenseUtil.validate(); deTaskExecutor.init(); + deTaskExecutor.clearRetryTask(); } catch (Exception e) { LogUtil.error(e.getMessage(), e.getCause()); }