Spring批处理器在阅读文件和导致重复键异常之间崩溃

c9qzyr3d  于 2023-01-19  发布在  Spring
关注(0)|答案(1)|浏览(117)

我目前正在使用批处理器,我们目前面临的问题是,当批处理器正在阅读文件时,它可能会在读取文件的过程中意外重启,这将使整个流程无法工作,因为当BP恢复读取文件时,它可能正在读取已经保存在数据库中的文件,并导致重复键异常。
因此,我被告知要实现这样的解决方案:当BP遇到重复键异常时,它应该从下到上读取文件,当它再次遇到重复键异常时,它应该移动到下一个文件。
我正在寻找有关如何实施/编码此解决方案的建议/指导?

pzfprimi

pzfprimi1#

一个正确配置的SpringBatch作业(持久作业存储库+面向块的步骤)将允许您重新启动这类失败的作业,而不会出现任何问题。
实际上,读取计数将保存在数据库中,并在重新启动方案中使用。在区块失败的情况下,不会向数据库写入任何数据(事务将回滚)。因此,在重新启动时,作业将从上一个保存点恢复阅读并保存新数据。

相关问题