Skip to content

Intermittent FatalStepExecutionException: JopRepository failure forcing rollback for Multi-threaded Step #4751

Open
@AbhiramYay

Description

@AbhiramYay

Bug description
Facing Intermittent FatalStepExecutionException: JopRepository failure forcing rollback Exception for Multi-threaded Step

Below is the error message:

org.springframework.batch.core.step.FatalStepExecutionException: JopRepository failure forcing rollback
java.util.ConcurrentModificationException: null

org.springframework.dao.OptimisticLockingFailureException: Attempt to update step execution id=24 with wrong version (376), where current version is 377
org.springframework.batch.core.repository.dao.JdbcStepExecutionDao.updateStepExecution(JdbcStepExecution.java:294)

Environment
Spring Batch version: 5.13, Java 17, H2 database

Steps to reproduce
We have a step like below with taskExecutor

TaskExecutor taskExecutor, JobRepository jobRepository, PlatformTransactionManager transactionManager Beans are autowired.

   StepBuilder getStepBuilder(){
   new StepBuilder("sampleStep", jobRepository);
}

@Bean
public Step getDetailsStep() {
	return getStepBuilder()
				.<String, String>chunk(10, transactionManager)
				.reader(itemReader())
                                .processor(itemProcessor)
				.writer(itemWriter())
				.taskExecutor(taskExecutor)
				.build();
    




Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions