Я использую Spring Batch в веб-приложении. Работы выполняются пользовательским TaskExecutor
, который управляет представленными Runnable
s в очереди и выполняет их один за другим. Таким образом, многие задания имеют статус STARTING
или STARTED
в течение длительного времени.Как отказаться от работы зомби?
Теперь случилось, что сервер был остановлен, пока в очереди остались задания. После перезагрузки сервера задания по-прежнему помечены как запущенные, но вместо этого они должны быть оставлены.
Как это можно сделать?
Что вы думаете о выполнении задания выполняет старую работу в чистоте? –
У меня была схожая идея, но это «чистое задание» должно запускаться автоматически при запуске сервера, и оно не должно отображаться в «JobRegistry». – stevecross
является использование oif SB mandatatory? потому что вместо использования SB используйте другую tecnique: структура таблиц метаданных хорошо документирована и может быть очищена с использованием стандартных SQL-скриптов. –