7

My workflow with celery is:

group1 = (task1, task2)
chain2 = (task3, group1)
group3 = (task4, task5, chain2)

When I start group3, everything goes fine: all the task are executed with the "dependency" that I need. The tasks perform some operation and then return a boolean. I would like to check the result of every task. Unfortunately, I am not able to retrieve all the results:

group3.results

returns:

True, True, tuple

The tuple is something like:

('8a8b7c2c-db44-4096-ba29-93ad2cd63409', [('576966ec-0ce5-4d82-9ab5-a23da805299b', None), ('777c77a3-34d6-4021-943f-8c39e7e87311', None)])

And I cannot handle it like a chain result. If I create an asyncresult with the id 8a8b7c2c-db44-4096-ba29-93ad2cd63409, I can only access the results of the subtask in the group (i.e.: I get task1 and task2 results, but no way to get task3 result).

This method is extremely complicated, but I cannot find something specific in celery documentation, where I found all the method to retrieve simple groups/chains results.

Given the fact that I really know the workflow, what is the best way to access ALL the results?

Desmond
  • 567
  • 1
  • 7
  • 17

0 Answers0