Lukas Kronsbein created AIRFLOW-4568:
----------------------------------------
Summary: The ExternalTaskSensor should be configurable to raise an
Airflow Exception in case the poked external task reaches a disallowed state,
such as f.i. failed
Key: AIRFLOW-4568
URL: https://issues.apache.org/jira/browse/AIRFLOW-4568
Project: Apache Airflow
Issue Type: Improvement
Components: operators
Affects Versions: 1.10.3
Reporter: Lukas Kronsbein
_As an engineer, I would like to have the behavior of the ExternalTaskSensor
changed_
_So that it fails in case the poked external_task_id fails_
*Therefore*
* I suggest extending the behavior of the sensor to optionally also query the
TaskInstance for disallowed states and raise an AirflowException if found.
Currently, if the poked external task reaches a failed state, the sensor
continues to poke and does not terminate
*Acceptance Criteria (from my pov)*
* The class interface for ExternalTaskSensor is extended with an additional
parameter, disallowed_states, which is an Optional List of
airflow.utils.state.State
* The poke method is expanded to count the number of rows from TaskInstance
which met the filter criteria dag_id, task_id, disallowed_states and
dttm_filter if disallowed_states is not None
* If disallowed_states is not None and the above query returns a counter > 0,
an Airflow Exception is thrown
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)