Използвам django-celery за задачи, които работят по-дълго от обикновено. През цялото време, докато задачата се изпълнява, клиентът проверява резултата от текущата задача. Проблемът е, че ако celeryd не се изпълнява или е прекратен поради някаква грешка, проверката за задачата все още дава резултат ПЕНДИНГ. Ако има проблем с работника, бих искал да дам тази информация на клиента и той трябва да спре, за да провери статуса на задачата и задачата трябва да бъде прекратена. Кодът, който използвам за проверка на състоянието на задачата, е:
res = AsyncResult(task_id)
result = res.status