forked from github/dataease
perf: 项目启动时删除所有重试任务
This commit is contained in:
parent
6a884b6171
commit
b046d03357
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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<JobKey> jobKeys = scheduler.getJobKeys(GroupMatcher.groupEquals(groupName));
|
||||
Set<TriggerKey> triggerKeys = scheduler.getTriggerKeys(GroupMatcher.groupEquals(groupName));
|
||||
scheduler.pauseTriggers(GroupMatcher.groupEquals(groupName));
|
||||
scheduler.unscheduleJobs(new ArrayList<>(triggerKeys));
|
||||
scheduler.deleteJobs(new ArrayList<>(jobKeys));
|
||||
}
|
||||
}
|
||||
|
@ -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());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user