При перезапуске задания снова запускаются только сбойные разделы. Как снова запустить успешно завершенное задание?
Есть ли разница между повторной отправкой задания и перезапуском задания?
я использую реализацию IBM JSR 352 на Websphere Liberty.
При перезапуске задания снова запускаются только сбойные разделы. Как снова запустить успешно завершенное задание?
Есть ли разница между повторной отправкой задания и перезапуском задания?
я использую реализацию IBM JSR 352 на Websphere Liberty.
Java Batch разработан таким образом, что при перезапуске экземпляра задания выполнение продолжается с того места, где вы остановились (в предыдущем неудачном или остановленном выполнении).
Обычно это означает две вещи:
Таким образом, если при первоначальном выполнении вы завершили шаг 1, а затем потерпели неудачу на шаге 2 в записи № 4123 и проверяете каждые 100 записей, то при перезапуске вы обычно начинаете выполнение с шаг 2 в записи № 4100.
В некоторых случаях необходимо также выполнить шаг 1 при перезапуске перед выполнением шага 2, где задание ранее не выполнялось, и есть возможность получить такое поведение.
Обычно задание отправляют/запускают повторно, часто по расписанию.
В соответствии с пакетной спецификацией новый экземпляр JobInstance создается каждый раз при запуске задания. В это время создается начальный JobExecution для этого JobInstance. Если выполнение не завершается, экземпляр может быть перезапущен, и в этот момент для этого JobInstance создается второй JobExecution.
Таким образом, при перезапуске используются контрольные точки и история выполнения предыдущего JobExecution, а запуск начинается с чистого листа.