Конфигурация шага 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 и так далее.

Заранее спасибо.

0 ответов

Другие вопросы по тегам