У меня есть задания в Spring Batch, которые запускаются без параметров. Эти задания не могут быть перезапущены, поэтому мы используем аргумент -next и JobParametersIncrementer, чтобы каждый раз разрешать выполнение этих заданий как новое.
Аргумент -next должен загрузить все executeContexts, чтобы получить новые уникальные параметры JobParameters с инкрементом (строка 492 CommandLineJobRunner).
Проблема заключается в том, что иногда новый выпуск может изменить объект, хранящийся в контексте выполнения, и последний контекст выполнения может стать не сериализуемым с новым выпуском.
Есть ли хороший способ или лучший способ запустить задание без параметров и разрешить изменения в объектах, хранящихся в контексте выполнения?
Нужно ли очищать историю репозитория при каждом выпуске, чтобы избежать сбоев, или есть лучшее решение?