Documentation Index Fetch the complete documentation index at: https://docs.prefect.io/llms.txt
Use this file to discover all available pages before exploring further.
prefect.server.models.task_runs
Functions for interacting with task run ORM objects.
Intended for internal use by the Prefect REST API.
Functions
create_task_run
create_task_run(db: PrefectDBInterface, session: AsyncSession, task_run: schemas.core.TaskRun, orchestration_parameters: Optional[Dict[ str , Any]] = None ) -> orm_models.TaskRun
Creates a new task run.
If a task run with the same flow_run_id, task_key, and dynamic_key already exists,
the existing task run will be returned. If the provided task run has a state
attached, it will also be created.
Args:
session: a database session
task_run: a task run model
Returns:
orm_models.TaskRun: the newly-created or existing task run
update_task_run
update_task_run(db: PrefectDBInterface, session: AsyncSession, task_run_id: UUID , task_run: schemas.actions.TaskRunUpdate) -> bool
Updates a task run.
Args:
session: a database session
task_run_id: the task run id to update
task_run: a task run model
Returns:
whether or not matching rows were found to update
read_task_run
read_task_run(db: PrefectDBInterface, session: AsyncSession, task_run_id: UUID ) -> Union[orm_models.TaskRun, None ]
Read a task run by id.
Args:
session: a database session
task_run_id: the task run id
Returns:
orm_models.TaskRun: the task run
read_task_run_with_flow_run_name
read_task_run_with_flow_run_name(db: PrefectDBInterface, session: AsyncSession, task_run_id: UUID ) -> Union[orm_models.TaskRun, None ]
Read a task run by id.
Args:
session: a database session
task_run_id: the task run id
Returns:
orm_models.TaskRun: the task run with the flow run name
read_task_runs
read_task_runs(db: PrefectDBInterface, session: AsyncSession, flow_filter: Optional[schemas.filters.FlowFilter] = None , flow_run_filter: Optional[schemas.filters.FlowRunFilter] = None , task_run_filter: Optional[schemas.filters.TaskRunFilter] = None , deployment_filter: Optional[schemas.filters.DeploymentFilter] = None , offset: Optional[ int ] = None , limit: Optional[ int ] = None , sort: schemas.sorting.TaskRunSort = schemas.sorting.TaskRunSort. ID_DESC ) -> Sequence[orm_models.TaskRun]
Read task runs.
Args:
session: a database session
flow_filter: only select task runs whose flows match these filters
flow_run_filter: only select task runs whose flow runs match these filters
task_run_filter: only select task runs that match these filters
deployment_filter: only select task runs whose deployments match these filters
offset: Query offset
limit: Query limit
sort: Query sort
Returns:
List[orm_models.TaskRun]: the task runs
count_task_runs
count_task_runs(db: PrefectDBInterface, session: AsyncSession, flow_filter: Optional[schemas.filters.FlowFilter] = None , flow_run_filter: Optional[schemas.filters.FlowRunFilter] = None , task_run_filter: Optional[schemas.filters.TaskRunFilter] = None , deployment_filter: Optional[schemas.filters.DeploymentFilter] = None ) -> int
Count task runs.
Args:
session: a database session
flow_filter: only count task runs whose flows match these filters
flow_run_filter: only count task runs whose flow runs match these filters
task_run_filter: only count task runs that match these filters
deployment_filter: only count task runs whose deployments match these filters
Returns:
int: count of task runs
count_task_runs_by_state
count_task_runs_by_state(db: PrefectDBInterface, session: AsyncSession, flow_filter: Optional[schemas.filters.FlowFilter] = None , flow_run_filter: Optional[schemas.filters.FlowRunFilter] = None , task_run_filter: Optional[schemas.filters.TaskRunFilter] = None , deployment_filter: Optional[schemas.filters.DeploymentFilter] = None ) -> schemas.states.CountByState
Count task runs by state.
Args:
session: a database session
flow_filter: only count task runs whose flows match these filters
flow_run_filter: only count task runs whose flow runs match these filters
task_run_filter: only count task runs that match these filters
deployment_filter: only count task runs whose deployments match these filters
Returns:
schemas.states.CountByState: count of task runs by state
delete_task_run
delete_task_run(db: PrefectDBInterface, session: AsyncSession, task_run_id: UUID ) -> bool
Delete a task run by id.
Args:
session: a database session
task_run_id: the task run id to delete
Returns:
whether or not the task run was deleted
set_task_run_state
set_task_run_state(session: AsyncSession, task_run_id: UUID , state: schemas.states.State, force: bool = False , task_policy: Optional[Type[TaskRunOrchestrationPolicy]] = None , orchestration_parameters: Optional[Dict[ str , Any]] = None ) -> OrchestrationResult
Creates a new orchestrated task run state.
Setting a new state on a run is the one of the principal actions that is governed by
Prefect’s orchestration logic. Setting a new run state will not guarantee creation,
but instead trigger orchestration rules to govern the proposed state input. If
the state is considered valid, it will be written to the database. Otherwise, a
it’s possible a different state, or no state, will be created. A force flag is
supplied to bypass a subset of orchestration logic.
Args:
session: a database session
task_run_id: the task run id
state: a task run state model
force: if False, orchestration rules will be applied that may alter or prevent
the state transition. If True, orchestration rules are not applied.
Returns:
OrchestrationResult object
with_system_labels_for_task_run
with_system_labels_for_task_run(session: AsyncSession, task_run: schemas.core.TaskRun) -> schemas.core.KeyValueLabels
Augment user supplied labels with system default labels for a task
run.