У меня есть весенняя интеграция + пакетное приложение.
Интеграция используется для чтения файла с помощью адаптера внутреннего канала и вызова пакетного задания. JobRepository определяется из: org.springframework.batch.core.repository.support.JobRepositoryFactoryBean
Диспетчер транзакций - org.springframework.orm.jpa.JpaTransactionManager.
Когда приложение запускается, я не знаю почему, но я прочитал эту странную конфигурацию:
[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]
Кажется, что по умолчанию каждый метод задания настроен с изоляцией SERIALIZABLE, но я нигде не устанавливал ее. Есть идеи, как установить уровень изоляции по умолчанию как ISOLATION_DEFAULT?