Джанго Сельдерей autoretry_for и retry_policy - PullRequest
0 голосов
/ 03 июня 2018

мы используем django 1.10, celery 4.1.0

Я заметил, что при отправке параметра 'autoretry_for' в качестве параметра задания и 'retry_policy' для apply_async () политика повтора полностью игнорируется.вместо этого он использует 'default_retry_delay' и максимальную повторную попытку по умолчанию, которая равна 3.

, например: настройки задания:

'default': {
    'soft_time_limit': 10,
    'default_retry_delay': 10,
    'autoretry_for': ('billiard.exceptions.SoftTimeLimitExceeded',
                      'app.utils.exceptions.FlowInternalServerErrorException',),
    'on_retry': 'app.tasks.common_tasks.on_task_retry',
    'celery_countdown': 0,
    'expires': 86400,
    'retry': True,
    'retry_policy': {
        'max_retries': 1,
        'interval_start': 0,
        'interval_step': 0.2,
        'interval_max': 0.2,
    },

, когда задача выполняется и она получает исключение FlowInternalServerErrorException'как в' autoretry_for ', он будет игнорировать настройку' retry_policy 'и будет использовать 3 максимальных повторных попытки и 10 секунд между повторными попытками.

Есть ли способ использовать 'retry_policy' при столкновении с одним из исключений 'autoretry_for'?

Спасибо

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