I'm using celery with django. I'm having to provide an option for the user to inspect a failed task, make modifications to the failed task data if necessary and submit it again. I have seen this thread - Celery Storing unrecoverable task failures for later resubmission. So I understand that celery does not store the original args and kwargs of the task and we need to take care of that. I'm fine with doing that. But if I have a main task "MainTask1" that submits a chain "SubTask1 | SubTask2 | SubTask3" and if SubTask2 fails, then I see that SubTask3 wont be executed till SubTask2 succeeds. But if SubTask2 fails after max retries, then SubTask3 is never submitted.
My questions are -
When SubTask2 has failed, I can persist the args and kwargs of that. But how do I get information of the remaining tasks in the chain?
What exactly is stored in the columns 'result' and 'meta' of the table celery_taskmeta?
When is the table celery_tasksetmeta populated?
Thanks,