cic-internal-integration/apps/cic-ussd/cic_ussd/tasks/base.py
2021-04-07 08:21:15 +02:00

28 lines
496 B
Python

# standard imports
# third-party imports
import celery
import sqlalchemy
# local imports
from cic_ussd.error import MetadataStoreError
class CriticalTask(celery.Task):
retry_jitter = True
retry_backoff = True
retry_backoff_max = 8
class CriticalSQLAlchemyTask(CriticalTask):
autoretry_for = (
sqlalchemy.exc.DatabaseError,
sqlalchemy.exc.TimeoutError,
)
class CriticalMetadataTask(CriticalTask):
autoretry_for = (
MetadataStoreError,
)