私は仕事を持っている:セロリの労働者が再試行を呼び出した後、タスクを再試行しません()
@celery.task(name='request_task',default_retry_delay=2,acks_late=True)
def request_task(data):
try:
if some_condition:
request_task.retry()
except Exception as e:
request_task.retry()
私は有効にMongoDBのブローカーとのMongoDB結果バックエンドとセロリを使用しています。
タスクのretry()メソッドが呼び出されると、条件文も例外もキャッチされずに、タスクは再試行されません。
[54909:2012-08-10 19:21 INFO/MainProcess]私はこのようなメッセージを取得する労働者の端末で
タスクは、[badb3131-8964-41b5-90a7-245a8131e68d]再試行をrequest_task :タスクを再試行できます。
何が問題なのですか?
更新:最後に、私はこの質問を解決せず、タスク内でループを使用しなければならなかったので、タスクは再試行されません。
あなたはどちらのセロリバージョンを使用していますか? –
@MauroRocco私はセロリ3.0.4を使用した時質問が尋ねられました。バージョン3.0.4と3.0.5のバグを扱ういくつかの機能がありましたが、それ以降のバージョンはうまく機能しました。 – user1039098
それを聞いてうれしいです。自分で質問に答えて解決策をより良く説明できれば。 –