气流cron表达式没有正确调度dag

时间:2016-03-14 11:05:35

标签: python airflow

我正在探索将Airflow用作cron,以便在设置cron时可以使用其他功能。

我通过设置cron来测试它的功能 "2,3,5,8, * * * *"。我期待在每小时2,3,5和8分钟安排特定的dag。但实际上,第2分钟的dag在3日执行,第5分钟执行,第5分钟执行。它根本没有执行到第8次。我猜它会在下一个小时的第2分钟执行8日。

在气流中看起来像某种bug或者没有处理过cron表达式的情况。

2 个答案:

答案 0 :(得分:1)

这不是错误。我同意这感觉很奇怪,但在此解释:https://pythonhosted.org/airflow/scheduler.html

  

请注意,如果您在一天的schedule_interval上运行DAG,则会在2016-01-01T23:59之后不久触发标记为2016-01-01的运行。换句话说,作业实例一旦它所涵盖的时间段结束就会启动。

答案 1 :(得分:1)

是的,那是因为气流不会在间隔上执行,而是在该间隔结束后执行。由于您指定了分钟2,3,5,8,因此它将在这些间隔结束时运行,分别为3,5,8和2.这在文档here

中有解释。