0
私はprojectにRabbitMQバージョン "3.5.7"とCelery 4.0.2を使用しています。セロリチェーンがグループを実行した後にタスクを実行しない
これはthis fileにセロリチェーンを作成するコードである:ここ
@app.route('/transcodeALL', methods=['POST'])
def transcodeToALL():
if request.method == 'POST':
# We will do something like this to simulate actual processing of a video
transcoding_tasks = group(
transcode_1080p.signature(queue='tasks', priority=1, immutable=True),
transcode_720p.signature(queue='tasks', priority=2, immutable=True),
transcode_480p.signature(queue='tasks', priority=3, immutable=True),
transcode_360p.signature(queue='tasks', priority=4, immutable=True)
)
main_task = chain(
common_setup.signature(queue='tasks', immutable=True)
transcoding_tasks,
end_processing.signature(queue='tasks', immutable=True),
)
main_task.apply_async()
return 'Video is getting transcoded to all dimensions!'
else:
return 'ERROR: Wrong HTTP Method'
、common_setup
が呼び出され、次にグループtranscoding_tasks
もその後呼び出されています。しかし、end_processing
はまったく呼び出されません。
どういうわけか、グループの実行後、他のタスクは呼び出されません。私はチェーンhereのステートメントを切り替えてチェックして、同じ問題が発生しました!
私は何かが間違っているか、これはバグですか?
ありがとうございます!
更新:解決策が見つかりました!