From 33b60f5df2d7637e99876fc10d0e47157ebd4594 Mon Sep 17 00:00:00 2001 From: Dani Hodovic Date: Mon, 12 Dec 2022 14:19:12 +0100 Subject: [PATCH] Retry when trying to store a Celery result in backend Adds retry logic when attempting to store a Celery result in the backend. If it fails the behavior is to exponentially (from 10ms to 10s) backoff. For more context on why this was implemented see: https://github.com/celery/celery/pull/6122 --- {{cookiecutter.project_slug}}/config/settings/base.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/{{cookiecutter.project_slug}}/config/settings/base.py b/{{cookiecutter.project_slug}}/config/settings/base.py index ad879fa72..54c9d999e 100644 --- a/{{cookiecutter.project_slug}}/config/settings/base.py +++ b/{{cookiecutter.project_slug}}/config/settings/base.py @@ -283,6 +283,11 @@ if USE_TZ: CELERY_BROKER_URL = env("CELERY_BROKER_URL") # https://docs.celeryq.dev/en/stable/userguide/configuration.html#std:setting-result_backend CELERY_RESULT_BACKEND = CELERY_BROKER_URL +# https://docs.celeryq.dev/en/stable/userguide/configuration.html#result-backend-always-retry +# https://github.com/celery/celery/pull/6122 +CELERY_RESULT_BACKEND_ALWAYS_RETRY = True +# https://docs.celeryq.dev/en/stable/userguide/configuration.html#result-backend-max-retries +CELERY_RESULT_BACKEND_MAX_RETRIES = 10 # https://docs.celeryq.dev/en/stable/userguide/configuration.html#std:setting-accept_content CELERY_ACCEPT_CONTENT = ["json"] # https://docs.celeryq.dev/en/stable/userguide/configuration.html#std:setting-task_serializer