Конфигурация шага Spring Batch: бесконечный цикл
Каждый. Я использую Spring Batch. У меня есть работа, состоящая из 3-х этапов: Step1, Step2, Step3. С этими 3 шагами я настроил цикл такого рода:
+--> Step1 --> Step2 --> Step3 --+
| |
+--------------------------------+
Я хочу выполнить этот цикл 3 раза.
В конце 1-й итерации Spring Batch имеет экземпляр выполнения каждого шага: каждый экземпляр выполнения шага имеет статус BatchStatus.COMPLETED и состояние выхода ExitStatus.COMPLETED.
Во время второй итерации Шаг 1 завершается успешно; Step2 не удается.
Теперь, если я попытаюсь перезапустить задание, Spring Batch не выполнит Шаг 1: он ЗАВЕРШЕН; поэтому он выполняет Step2. Step2 успешно завершен, и теперь возникает проблема: Spring Batch не выполняет Step3: в db есть экземпляр выполнения шага Step3, который завершен (тот, который создан после 1-й итерации); в то же время он отмечает выполнение Step1 по аналогичной причине. Таким образом, он выполняет Step2 в бесконечном цикле!
Что я могу сделать? Я хотел бы, чтобы во 2-й попытке выполнить задание, после шага 2, был выполнен шаг 3, а затем шаг 1 и так далее.
Заранее спасибо.