You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2021/07/20 05:55:06 UTC

[GitHub] [airflow] yuqian90 commented on issue #17012: NONE_FAILED_OR_SKIPPED and NONE_FAILED do the same

yuqian90 commented on issue #17012:
URL: https://github.com/apache/airflow/issues/17012#issuecomment-883089001


   @uranusjr already explained the differences between these states. I just want to re-iterate that `none_failed_or_skipped` and `none_failed` are different. The difference is explained in [Trigger Rules](https://airflow.apache.org/docs/apache-airflow/stable/concepts/dags.html#trigger-rules).
   
   In the documented example, if `join` is set to `none_failed_or_skipped`, it is skipped when both `branch_false` and `follow_branch_a` are skipped. However, if `join` is set to `none_failed`, it will be `success` even if both `branch_false` and `follow_branch_a` are skipped.
   ![image](https://user-images.githubusercontent.com/6637585/126268585-a4ac658e-95f9-4b55-a5ed-097a8cb5c66b.png)
   
   In practices, I do find the `none_failed_or_skipped` behaviour more useful, especially when used to join branching logic. However, I don't know if any users out there prefer the behaviour of `none_failed`.
   
   The code that causes such difference can be found here:
   https://github.com/apache/airflow/blob/866a601b76e219b3c043e1dbbc8fb22300866351/airflow/ti_deps/deps/trigger_rule_dep.py#L146


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org