Apache Airflow忽略失败的任务

时间:2018-08-22 20:58:51

标签: airflow

是否有一种方法可以忽略失败的任务并在进行两次重试后继续下一步?

示例;

SELECT follower_id, poster_id, recipient_id
FROM followers
INNER JOIN post on followed_id = poster_id
WHERE follower_id = 1 AND poster_id != recipient_id;
LIMIT 3; 

1 个答案:

答案 0 :(得分:2)

看看气流trigger rules

默认情况下,每个任务的触发规则为'all_success',这意味着只有在所有直接上游任务都成功之后,任务才会执行。

这里想要的是触发规则'all_done',这意味着所有直接上游任务都已完成,无论它们是成功还是失败。

但是要小心,因为这还意味着,如果不是直接上游的任务失败,并且该任务之后的任务被标记为'upstream_failed',则具有此触发规则的任务仍将执行。

>

因此,在您的情况下,您必须为t1设置retries=2,为t2设置trigger_rule='all_done'