У меня есть проект весенней загрузки, который использует spring-boot-starter-quartz, version '2.2.2.RELEASE'
и springBootVersion '1.5.10.RELEASE'
для планирования заданий.
Я случайно сталкиваюсь с проблемой, когда некоторые из триггеры не выполняются.
Ниже приведен файл quartz.properties в моем проекте
org.quartz.threadPool.threadCount=10
org.quartz.jobStore.class =org.quartz.impl.jdbcjobstore.JobStoreCMT
org.quartz.job-store-type =jdbc
org.quartz.jobStore.useProperties=false
org.quartz.jobStore.driverDelegateClass =org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.tablePrefix =QRTZ_
org.quartz.dataSource.fieldstar.driver=com.mysql.jdbc.Driver
org.quartz.dataSource.fieldstar.maxConnections = 15
org.quartz.scheduler.jobFactory.class = org.quartz.simpl.SimpleJobFactory
Когда я запускаю задание, я вижу строки моих триггеров в базе данных. таблица QRTZ_TRIGGERS
. Когда достигается START_TIME
, триггеры удаляются из этой таблицы, и реализация, предусмотренная для этого задания с использованием QuartzJobBean
, выполняется для некоторых триггеров, но не для остальных.
Ниже приведен код для планирования задания.
JobBuilder.newJob(CommonReminderListener.class)
.withIdentity("jobKey")
.withDescription("Test" + jobKey.getGroup())
.usingJobData(jobDataMap)
.storeDurably()
.build();
Ниже приведена моя реализация для QuartzJobBean
@Component
public class CommonReminderListener extends QuartzJobBean {
@Override
public void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
logger.info("Executing Job with key", jobExecutionContext.getJobDetail().getKey());
}
}
Я не уверен, что, кажется, проблема. Любая помощь приветствуется.