Операция Hangfire 1.6.22 была отменена, а затем забрана другим работником - PullRequest
0 голосов
/ 31 октября 2019

Я настроил действительно долго выполняемое задание, которое может выполняться от 10 минут до 7 дней. Что я наблюдаю, так это то, что работа каким-то образом отменяется по пути (не знаю, по какому поводу) с исключением.

System.OperationCanceledException: The operation was canceled. 
    at System.Threading.CancellationToken.ThrowOperationCanceledException()
    at Hangfire.Server.ServerJobCancellationToken.ThrowIfCancellationRequested()

Затем его получает другой работник. Что я точно знаю, так это то, что

  • Задание не завершилось неудачно, и его снова подняли из-за логики повторения, поскольку для параметра AutomaticRetry Attempts установлено значение 0
  • Задание все еще выполняется, так какв консоль Hangfire, она все еще обрабатывается.
  • Есть другие задания, которые еще не завершены до выполнения этого задания.

Ниже приведен снимок экрана текущего состояния задания. Я не уверен, что вызывает этот автоматический тайм-аут, но в настоящее время я думаю, что любой перезапуск веб-приложения на экземпляре IIS вызовет событие отмены операции. Есть ли другие сценарии, которые я пропускаю?

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...