Spring Batch - 当编写器中出现异常(连接问题)时,重试在容错步骤上不起作用

问题描述 投票:0回答:0

当运行春季批处理作业时出现网络故障时,我们面临一个问题。 由于 SQLSTATE(08S01) 在日志中弹出而标记为损坏,并且 Spring 批处理作业挂起一段时间并且作业崩溃。我们有写入者写入数据库,在连接问题期间抛出异常,进行了重试,但由于某种原因重试似乎不起作用。我已经通过从编写器代码中显式抛出异常来测试重试,并且它有效。

我通过在编写器执行期间关闭网络来模拟上述问题,异常记录在 RetryListener 中,但这就是我稍后在日志中看到的内容

"org.springframework.batch.core.step.tasklet.TaskletStep","message":"回滚事务处于未知状态" "org.springframework.transaction.support.TransactionTemplate","message":"应用程序异常被回滚异常覆盖"

有人可以建议一个解决方案,以便重试按预期进行吗?

jpa spring-batch
© www.soinside.com 2019 - 2024. All rights reserved.