[ 
https://issues.apache.org/jira/browse/AIRFLOW-872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15883889#comment-15883889
 ] 

Daniel Huang commented on AIRFLOW-872:
--------------------------------------

Dug a little deeper. Your example DAG and the DAG I ran into this issue both 
use tasks with the default trigger rule of ALL_SUCCESS. SKIPPED is not 
considered a successful status, so the [code is failing the 
DAG|https://github.com/apache/incubator-airflow/blob/2ce7556a590f81b44a7222830e648c6912eb6986/airflow/ti_deps/deps/trigger_rule_dep.py#L166]
 when it sees t3's parent was skipped, which makes sense. I don't know if this 
behavior change from 1.7.1.3->1.8 was an intentional bug fix or unintended side 
effect.

I think we just need a NONE_FAILED trigger rule option that accepts 
success/skipped. I'm happy to make the change if others think it sounds 
reasonable. Open to a better name as well.

Also, I do wonder if it would make more sense as the default (ALL_SUCCESS would 
be the stricter option). Otherwise, we may want to call out this behavior in 
the LatestOnly/ShortCircuit operators.

> Tasks are not skipping correctly
> --------------------------------
>
>                 Key: AIRFLOW-872
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-872
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: cli, DagRun, webserver
>    Affects Versions: Airflow 1.8
>         Environment: docker-compose using docker-compose-LocalExecutor.yml  
> on this fork/branch 
> https://github.com/fdm1/docker-airflow/tree/v1-8-not-skipping
>            Reporter: Frank Massi
>         Attachments: Screen Shot 2017-02-13 at 1.09.35 PM.png, Screen Shot 
> 2017-02-13 at 1.11.09 PM.png, Screen Shot 2017-02-13 at 1.11.15 PM.png, 
> Screen Shot 2017-02-13 at 1.13.13 PM.png
>
>
> When using the BranchPythonOperator or ShortCircuitOperator to make Dags 
> idempotent, if running the Dag after a successful DagRun and clearing the 
> initial task, the second task skips and then the Dag enters a failed state, 
> as opposed to skipping all remaining tasks and marking the Dag successful.
> Steps to reproduce are outlined here: 
> https://github.com/fdm1/docker-airflow/blob/v1-8-not-skipping/dags/test_clear_bug.py#L4-L9
> In 1.7.1.3, the tasks do skip correctly, so this appears to be a new bug.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to