I have spring integration + batch application.
Integration is used to read a file with an inboun channel adapter and invoke a batch job. JobRepository is defined from: org.springframework.batch.core.repository.support.JobRepositoryFactoryBean
Transaction Manager - org.springframework.orm.jpa.JpaTransactionManager.
When the application starts, I do not know why, but I read this strange configuration:
[5860] [2012-03-12 17:40:47,267] D [main] [org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource] Adding transactional method [*] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]
[5860] [2012-03-12 17:40:47,267] D [main] [org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource] Adding transactional method [create*] with attribute [PROPAGATION_REQUIRES_NEW,ISOLATION_SERIALIZABLE]
[5860] [2012-03-12 17:40:47,267] D [main] [org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource] Adding transactional method [getLastJobExecution*] with attribute [PROPAGATION_REQUIRES_NEW,ISOLATION_SERIALIZABLE]
It seems that by default, each working method is configured with SERIALIZABLE isolation, but I have not installed it anywhere. Any idea to set the default isolation level as ISOLATION_DEFAULT?