Task Result - celery.result

class celery.result.AsyncResult(task_id, backend=None)

Pending task result using the default backend.

Parameters:
task_id

The unique identifier for this task.

backend

Instance of celery.backends.DefaultBackend.

class celery.result.BaseAsyncResult(task_id, backend)

Base class for pending result, supports custom task result backend.

Parameters:
task_id

The unique identifier for this task.

backend

The task result backend used.

exception TimeoutError

The operation timed out.

BaseAsyncResult.failed()

Returns True if the task failed by exception.

BaseAsyncResult.get(timeout=None)

Alias to wait().

BaseAsyncResult.ready()

Returns True if the task executed successfully, or raised an exception.

If the task is still running, pending, or is waiting for retry then False is returned.

BaseAsyncResult.result

When the task has been executed, this contains the return value.

If the task raised an exception, this will be the exception instance.

BaseAsyncResult.revoke(connection=None, connect_timeout=None)

Send revoke signal to all workers.

The workers will ignore the task if received.

BaseAsyncResult.status

The current status of the task.

Can be one of the following:

PENDING

The task is waiting for execution.

STARTED

The task has been started.

RETRY

The task is to be retried, possibly because of failure.

FAILURE

The task raised an exception, or has been retried more times than its limit. The result attribute contains the exception raised.

SUCCESS

The task executed successfully. The result attribute contains the resulting value.
BaseAsyncResult.successful()

Returns True if the task executed successfully.

BaseAsyncResult.traceback

Get the traceback of a failed task.

BaseAsyncResult.wait(timeout=None)

Wait for task, and return the result when it arrives.

Parameters:
  • timeout – How long to wait, in seconds, before the operation times out.
Raises celery.exceptions.TimeoutError:
 

if timeout is not None and the result does not arrive within timeout seconds.

If the remote call raised an exception then that exception will be re-raised.

class celery.result.EagerResult(task_id, ret_value, status, traceback=None)

Result that we know has already been executed.

exception TimeoutError

The operation timed out.

EagerResult.ready()

Returns True if the task has been executed.

EagerResult.result

The tasks return value

EagerResult.revoke()
EagerResult.status

The tasks status

EagerResult.successful()

Returns True if the task executed without failure.

EagerResult.traceback

The traceback if the task failed.

EagerResult.wait(timeout=None)

Wait until the task has been executed and return its result.

class celery.result.TaskSetResult(taskset_id, subtasks)

Working with TaskSet results.

An instance of this class is returned by TaskSet‘s apply_async(). It enables inspection of the subtasks status and return values as a single entity.

Option taskset_id:
 see taskset_id.
Option subtasks:
 see subtasks.
taskset_id

The UUID of the taskset itself.

subtasks

A list of AsyncResult instances for all of the subtasks.

completed_count()

Task completion count.

Returns:the number of tasks completed.
failed()

Did the taskset fail?

Returns:<literal>True</literal> if any of the tasks in the taskset failed. (i.e., raised an exception)
iterate()

Iterate over the return values of the tasks as they finish one by one.

Raises :The exception if any of the tasks raised an exception.
itersubtasks()

Taskset subtask iterator.

Returns:an iterator for iterating over the tasksets AsyncResult objects.
join(timeout=None)

Gather the results for all of the tasks in the taskset, and return a list with them ordered by the order of which they were called.

Parameters:
  • timeout – The time in seconds, how long it will wait for results, before the operation times out.
Raises celery.exceptions.TimeoutError:
 

if timeout is not None and the operation takes longer than timeout seconds.

If any of the tasks raises an exception, the exception will be reraised by join().

Returns:list of return values for all tasks in the taskset.
ready()

Is the task ready?

Returns:<literal>True</literal> if all of the tasks in the taskset has been executed.
classmethod restore(taskset_id, backend=<celery.backends.amqp.AMQPBackend object at 0x103e00750>)

Restore previously saved taskset result.

revoke(*args, **kwargs)
save(backend=<celery.backends.amqp.AMQPBackend object at 0x103e00750>)

Save taskset result for later retrieval using restore().

Example:

>>> result.save()
>>> result = TaskSetResult.restore(task_id)
successful()

Was the taskset successful?

Returns:<literal>True</literal> if all of the tasks in the taskset finished successfully (i.e. did not raise an exception).
total

The total number of tasks in the TaskSet.

waiting()

Is the taskset waiting?

Returns:<literal>True</literal> if any of the tasks in the taskset is still waiting for execution.

Previous topic

Executing Tasks - celery.execute

Next topic

Task Information and Utilities - celery.task

This Page