Celery 任务报错无限循环

jos*_*git 5 redis celery django-celery djcelery

我在 DJANGO 应用程序中使用 celery 时遇到问题。当任务出现错误时,任务进入循环并重新开始而不是完成任务我的任务从数据库运行存储过程。在存储过程中,如果有任何错误,请发送电子邮件并退出存储过程。

我有两个不同并发的工人

celery multi start carga_w conc_w -A provcon -Q:conc_w conc -Q:carga_w carga -l info -c:conc_w 1 -c:carga_w 3 -E
Run Code Online (Sandbox Code Playgroud)

任务:

@task(queue='conc')
def conci(idprov,pfecha):
    conci = Buscar_Conci()
    spconc = conci.buscarcon(idprov,pfecha)
    return None
Run Code Online (Sandbox Code Playgroud)

尝试清除任务不起作用,任务将其保留在内存中。要清除任务,我使用下一个命令:

celery -A provcon purge -f
Run Code Online (Sandbox Code Playgroud)

我是第一次在 DJANGO 中使用 Celery,我不知道我是否遗漏了什么或者我有一些错误的设置:

BROKER_URL = 'redis://localhost:6379/0'
CELERY_IMPORTS = ("pc.tasks", )
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_RESULT_BACKEND='djcelery.backends.cache:CacheBackend'
Run Code Online (Sandbox Code Playgroud)

要在进入该循环时终止任务,我需要从数据库中终止它,因为我无法从 django-admin 站点或使用 celery purge 命令停止

出现错误时如何避免在该循环中输入任务的任何建议

提前致谢