打破芹菜中的无限循环

gue*_*tli 6 celery

我使用 celery.chord(...) 创建一组任务和一个在组中的所有任务完成后调用的方法。

我使用 amqp 结果后端(但我想切换到 memcached)。

我的工作人员每秒一遍又一遍地打印这一行。我不知道如何打破这个无限循环。我可以访问rabbitMQ Web界面,但找不到ID为“32ba5fe4-...”的内容。

[2013-03-22 14:18:26,896: INFO/MainProcess] Task celery.chord_unlock[32ba5fe4-918c-480f-8a78-a310c11d0c3a] retry: Retry in 1s
[2013-03-22 14:18:26,897: INFO/MainProcess] Got task from broker: celery.chord_unlock[32ba5fe4-918c-480f-8a78-a310c11d0c3a] eta:[2013-03-22 13:18:27.895123+00:00]
Run Code Online (Sandbox Code Playgroud)

这是一个测试环境。任何数据都不会丢失。

我使用芹菜3.0.16

enl*_*vin 4

它不应该是无限循环。

celery.chord_unlock 任务检查和弦子任务是否已完成以调用合并回调任务。如果没有,它会安排自己在一秒钟内再次检查。和弦任务完成后,您将不再在日志中看到这些消息。

编辑:您可以撤销chord_unlock任务来停止循环

celery.control.revoke('32ba5fe4-918c-480f-8a78-a310c11d0c3a')
Run Code Online (Sandbox Code Playgroud)