Celery Task не повторяет попыток после определенного количества раз
У меня есть задача celery с RabbitMQ в качестве брокера. Задача вызывает API и проверяет ответ, если ответ не удовлетворяет некоторым условиям, задача повторяет попытку с обратным отсчетом 5 секунд. Проблема в том, что моя задача повторяется ровно 279 раз, после чего она застревает в статусе "retried" и не выполняется.
Вот что в основном делает моя задача:
@shared_task(name="get-progress", bind=True, max_retries=10 ** 65, acks_late=True, reject_on_worker_lost=True)
def get_progress(self, object_id: str):
# get progress from third party api and store in status variable
if status == "available":
# update object in db
return
else:
self.retry(countdown=5)
Я создал еще одну задачу для проверки моей конфигурации следующим образом
@shared_task(name="dummy", bind=True, max_retries=10 ** 65, acks_late=True, reject_on_worker_lost=True)
def dummy(self):
logger.info(f"retry {self.request.retries} of {self.max_retries} with {self.request.id}")
self.retry(countdown=1)
Фиктивная задача работает отлично и повторяется до смешного большое количество раз.
Не происходит никаких исключений, я проверил, не прерывается ли работа API, и этого не произошло. Число 279 действительно сбивает меня с толку, и я думаю, что я что-то упускаю. Буду признателен за любую помощь.