airflow.providers.edge.executors.edge_executor

Module Contents

Classes

EdgeExecutor

Implementation of the EdgeExecutor to distribute work to Edge Workers via HTTP.

Attributes

TaskTuple

PARALLELISM

airflow.providers.edge.executors.edge_executor.TaskTuple[source]
airflow.providers.edge.executors.edge_executor.PARALLELISM: int[source]
class airflow.providers.edge.executors.edge_executor.EdgeExecutor(parallelism=PARALLELISM)[source]

Bases: airflow.executors.base_executor.BaseExecutor

Implementation of the EdgeExecutor to distribute work to Edge Workers via HTTP.

start(session=NEW_SESSION)[source]

If EdgeExecutor provider is loaded first time, ensure table exists.

execute_async(key, command, queue=None, executor_config=None, session=NEW_SESSION)[source]

Execute asynchronously.

sync(session=NEW_SESSION)[source]

Sync will get called periodically by the heartbeat method.

end()[source]

End the executor.

terminate()[source]

Terminate the executor is not doing anything.

try_adopt_task_instances(tis)[source]

Try to adopt running task instances that have been abandoned by a SchedulerJob dying.

Anything that is not adopted will be cleared by the scheduler (and then become eligible for re-scheduling)

Returns

any TaskInstances that were unable to be adopted

Return type

collections.abc.Sequence[airflow.models.taskinstance.TaskInstance]

static get_cli_commands()[source]

Vends CLI commands to be included in Airflow CLI.

Override this method to expose commands via Airflow CLI to manage this executor. This can be commands to setup/teardown the executor, inspect state, etc. Make sure to choose unique names for those commands, to avoid collisions.

Was this entry helpful?