Hi,
I encounter a problem using Quartz and Spring batch.
3 different recurring jobs are running at the same time (with SimpleAsyncTaskExecutor). I'm using the in-memory MapJobRepositoryFactoryBean
Frequently one of the following two errors occurs:
Code:Exception in thread "SimpleAsyncTaskExecutor-45" java.lang.IllegalArgumentException: JobExecution must already be saved at org.springframework.util.Assert.notNull(Assert.java:112) at org.springframework.batch.core.repository.dao.MapJobExecutionDao.updateJobExecution(MapJobExecutionDao.java:80) at org.springframework.batch.core.repository.support.SimpleJobRepository.update(SimpleJobRepository.java:231)Configuration used:Code:java.lang.IllegalArgumentException: step executions for given job execution are expected to be already saved at org.springframework.util.Assert.notNull(Assert.java:112) at org.springframework.batch.core.repository.dao.MapStepExecutionDao.updateStepExecution(MapStepExecutionDao.java:90) at org.springframework.batch.core.repository.support.SimpleJobRepository.update(SimpleJobRepository.java:264)
- Spring 2.5.5
- Spring batch 2.0.0 CI SNAPSHOT
- Quartz 1.6.4
It is probably a conflict about jobRepository access by many threads, but I am not able to diagnostic the problem. Please let me know if you have any advice.
Thank you in advance,
Matthias.


Reply With Quote