Java Batch разработан так, что при перезапуске экземпляра задания выполнение продолжается там, где вы остановились (в предыдущем неудачном или остановленном исполнении).
Так обычно это означает две вещи:
- В работе, вы начинаете на этапе ранее неисправного (или шага, на котором была остановлена работа).
- В этом шаге вы начинаете с позиционирования курсора ввода, используя значения контрольной точки, хранящиеся в контейнере партии.
Так, если на первом прогоне вы завершили шаг1 затем потерпел неудачу в step2 рекордными # 4123, и каждые 100 контрольной точки записи, то при перезапуске вы обычно начать выполнение в step2 в запись # 4100.
В некоторых случаях необходимо выполнить шаг1 на перезагрузке, а также перед выполнением step2 где ранее не удалась работа, и есть возможность получить такое поведение, как хорошо.
Характерно, чтобы отправить/начать работу повторно, часто по расписанию.
В условиях спецификации партии новый JobInstance создается каждый раз при запуске задания. В это время создается JobExecution для этого JobInstance. Если выполнение не выполняется до завершения, экземпляр может быть перезапущен, и в это время создается JobExecutionJobInstance.
Поэтому перезапуск использует контрольные точки и историю выполнения предыдущего JobExecution, а начало начинается с чистого листа.
Это ответ на ваш вопрос? –
да сделал! Я не могу ответить на ваш ответ, так как у меня нет достаточной репутации. Но спасибо вам большое :) –
Нет проблем. Рад помочь, только упомянул upvote по другому вопросу, так как вы были новичком на сайте. (Я думаю, вы все равно можете принять ответ, хотя). –