Airflow 新DAG不';无法赶上错过的计划(计划间隔是一个cron)

Airflow 新DAG不';无法赶上错过的计划(计划间隔是一个cron),airflow,Airflow,我有一个以前没有时间表的气流DAG。它是在气流界面打开的,我正在手动运行它。刚才,我更新了时间表如下: [in the default arguments object that is fed into the DAG] 'catchup': True 'start_date': datetime.datetime(2020, 8, 1) [in my DAG object instantiation] schedule_interval='0 0 17 * *' 现在是UTC 2020年8

我有一个以前没有时间表的气流DAG。它是在气流界面打开的,我正在手动运行它。刚才,我更新了时间表如下:

[in the default arguments object that is fed into the DAG]
'catchup': True
'start_date': datetime.datetime(2020, 8, 1)

[in my DAG object instantiation]
schedule_interval='0 0 17 * *'
现在是UTC 2020年8月18日。我原以为这会导致DAG在添加代码更改后立即运行,但到目前为止它还没有运行

我已经说过,赛程从2020年8月1日开始,赛程间隔的意思是“每个月17日”,因此根据这个定义,它错过了8月17日午夜的一次跑步。既然
catchup
设置为
True
,为什么它不能赶上上一次运行?它什么时候开始运行


我知道有一些争议围绕着
计划间隔
的混乱行为,因为第一次运行是在开始日期之后的第一个间隔之后。然而,即使是我读过的那些讨论,也与以下情况有关:
schedule\u interval
是一个像
@daily
一样的实际时间间隔,并且有人在将来进行了第一次跑步。我找不到任何文档,说明当新计划在过去开始时和/或当
schedule\u interval
是一个cron时,追赶应该发生什么。

您想将
start\u date
设置为当前日期/时间之后的
计划间隔的一个“interval”;其中“interval”是后续执行之间的时间量


最简单的方法是将
start\u date
设置为在您希望它运行的日期之前运行的日期(如果它已经安装并运行)。在这种情况下,它将是
datetime.datetime(2020,7,17)

您希望将
开始日期
设置为当前日期/时间之后的
计划间隔的一个“间隔”;其中“interval”是后续执行之间的时间量

最简单的方法是将
start\u date
设置为在您希望它运行的日期之前运行的日期(如果它已经安装并运行)。在本例中,它将是
datetime.datetime(2020,7,17)