I want to declare org.springframework.transaction.TransactionTimedOu tException as a skippable exception in spring-batch 2.1.8.
But it does not work. When I looked into the source code, I found the following code in FaultTolerantStepFactoryBean.java.
The TransactionException is hard coded as a non-retryable exception. So TransactionException is thrown to AbstractStep

Code:
addNonRetryableExceptionIfMissing(SkipLimitExceededException.class, NonSkippableReadException.class,
				TransactionException.class, FatalStepExecutionException.class, SkipListenerFailedException.class,
				SkipPolicyFailedException.class, RetryException.class, JobInterruptedException.class, Error.class);
Code:
[org.springframework.batch.core.step.AbstractStep] (SimpleAsyncTaskExecutor-1:)
Encountered an error executing the step
org.springframework.transaction.TransactionTimedOutException: Transaction timed
I don't know this change happens since which version and why. How can I make TransactionTimedOutException skippable in spring-batch 2.1.8?