Перезапуск задания с ошибкой, поскольку он работает с теми же параметрами

У меня есть задача с 3 разными пакетными заданиями. Если один из них дает сбой, и я перезапускаю этот конкретный, выполнение новой задачи дает ошибку запуска командной строки, поскольку она запускает задачу с теми же параметрами, что и предыдущая задача. Каков обходной путь для этого?


person Siddhant Sorann    schedule 24.09.2018    source источник
comment
Можете ли вы уточнить пример, чтобы воспроизвести проблему? См. stackoverflow.com/help/mcve.   -  person Mahmoud Ben Hassine    schedule 24.09.2018
comment
Эй, так это может быть только описательным. По сути, у меня есть задача с несколькими пакетными заданиями. Допустим, 3. Теперь, если 2 пройдены, а 1 не пройдена, я бы хотел перезапустить неудачное пакетное задание. Когда я пытаюсь сделать это, я бы хотел, чтобы снова запускалось только неудачное задание, но в текущем случае оно просто запускает задачу снова и снова запускает все задания с теми же параметрами.   -  person Siddhant Sorann    schedule 25.09.2018
comment
Вы пытались установить restartable=false на задания?   -  person Mahmoud Ben Hassine    schedule 25.09.2018
comment
Да, проблема не в том, что он не перезагружается. Проблема в том, что я хочу перезапустить только неудачную работу, а не завершенную.   -  person Siddhant Sorann    schedule 25.09.2018
comment
Есть ли что-то, что мешает вам иметь задачу на работу? Это решит вашу проблему по дизайну. Вы бы только перезапустили задачу неудачного задания.   -  person Mahmoud Ben Hassine    schedule 25.09.2018
comment
В настоящее время у меня есть около 50+ заданий, определенных через файлы xml в одном проекте. Таким образом, создание отдельной банки для каждого будет большой задачей.   -  person Siddhant Sorann    schedule 26.09.2018
comment
Вы можете сохранить свою единственную банку, но создать определение задачи для каждого задания, используя свойство spring.batch.job.names=job1, spring.batch.job.names=job2 и т. д. Таким образом, у вас будет одно приложение для задач, но с более чем 50 определениями задач, по одному на задание.   -  person Mahmoud Ben Hassine    schedule 26.09.2018
comment
Да, это то, что я планирую сделать сейчас. Спасибо. Кроме того, не могли бы вы представить, есть ли еще одно свойство, чтобы заказать работу? А также как использовать свойство spring.cloud.task.batch.failOnJobFailure=true. Я получаю нулевое исключение, когда добавляю его в свою задачу и запускаю.   -  person Siddhant Sorann    schedule 26.09.2018
comment
Чтобы упорядочить задания, используйте то же свойство. Например, spring.batch.job.names=job2,job1 запустит задание2, а затем задание1. См. здесь: github.com/spring-projects/spring-boot/blob/master/. По другому вопросу, касающемуся spring.cloud.task.batch.failOnJobFailure=true , откройте еще один вопрос на SO.   -  person Mahmoud Ben Hassine    schedule 26.09.2018
comment
Эй, я попытался указать job2, job1, но он по-прежнему запускает job1 до запуска job2. И я создал stackoverflow.com/questions/52531263/ для другой проблемы. Спасибо!   -  person Siddhant Sorann    schedule 27.09.2018