Задачи в очередях запускаются дважды

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
yujin1st
Сообщения: 192
Зарегистрирован: 2012.03.26, 12:03

Задачи в очередях запускаются дважды

Сообщение yujin1st »

Здравствуйте,
Запостил проблему в github (https://github.com/yiisoft/yii2-queue/issues/374), но по непонятно причине тикет отнесли к вопросу и закрыли его.

Собственно проблема:
Есть очереди (redis, supervisor настроенный на 5 процессов по документации)
Есть задачи длительностью в несколько часов, которые запускаются однократно (для них поставлен соответствующий ttr и canRetry возвращает false). Начал замечать что задачи могут запускаться второй раз, а то и третий.

Как отследил:
1. в логах queue виден второй запуск
2. добавил jobId в базу к записи к выполняемой задаче. При запуске задачи проверяю записано ли значение, или нет. Если пусто то устанавливаем уникальное, если нет то сообщаем об ошибке и сворачиваемся.

Ключевой момент: исполняемая задача не падает, в canRetry ничего приходит (там поставил yii::error).
Ответить