Конфигурирование тайм-аута транзакции
Да, свойство шага javax.transaction.global.timeout " устанавливает тайм-аут транзакции для потоков уровня раздела, выполняющих" чанки "на шаге секционированного чанкатак же, как у вас во фрагменте XML задания (JSL):
<step id="ReportBatch" >
<properties >
<property name="javax.transaction.global.timeout" value="900"/>
</properties>
<chunk>...</chunk>
<partition>...</partition>
</step>
Конфигурация сервера может установить верхнюю границу для этих тайм-аутов транзакций "приложения" с помощью:
<transaction propogatedOrBMTTranLifetimeTimeout="1800s"/>
Так что сВ приведенном выше примере эффективный интервал времени ожидания для ваших чанк-транзакций будет 900 с.
Это подробно, наряду с некоторыми другими опциями в этом вопросе и ответе.
Что происходит при тайм-ауте транзакции
Когда тайм-аут транзакции истекает, транзакция немедленно помечается для отката, и в messages.log появляется сообщение вместе с подробной информацией о соответствующем потоке, включаятрассировка стека.
Однако ваше приложение может не заметить сразу. Если оно «зависло», совершая вызов по сети или делаетПри вычислении, интенсивно загружающем ЦП, он будет продолжаться и может видеть только исключение, возникающее, когда он касается транзакционного ресурса или проверяет состояние транзакции и т. д.