我有简单的DAG: (Airflow v1.10.16,在本地主机上使用SequentialExecutor)
I've simple DAG: (Airflow v1.10.16, using SequentialExecutor on localhost machine)
- 开始日期设置为过去
- catchup = False
- start_date set in past
- catchup = False
按照代码注释
:参数追赶:执行调度程序追赶(或仅运行最新的命令)?
:param catchup: Perform scheduler catchup (or only run latest)?
我希望当调度程序出现时,应该将这个dag运行时间调度为比现在的过去日期一次. 但是,我遇到的行为是:调度程序正在调度最近的两次运行(而不是一次,最近的一次)
I expected when the scheduler comes up, it's supposed to schedule this dag run only once in past date than now. However, the behavior i'm experiencing is: the scheduler is scheduling recent two runs (instead just one, the latest one)
我于2019-12-09 04:03:00Z(=现在)激活了调度程序,以下是任务实例的调度运行:
I activated the scheduler on 2019-12-09 04:03:00Z (= now) and here's Task Instances scheduled runs:
有人可以澄清为什么安排了过去2次而不是一次吗? 我的理解是错误还是错误?
Can someone clarify why 2 runs in past date were scheduled instead just one? is it some bug or something wrong in my understanding?
推荐答案当使用timedelta作为1.10.11之前版本的计划间隔时,这是Airflow中的错误.使用cron时,它可以按预期工作.现在已在1.10.11中修复.
This is a bug in Airflow when using timedelta as Schedule Interval for version pre-1.10.11. It works as intended when using cron. It is fixed now in 1.10.11.
github/apache/airflow/pull/8776
issues.apache/jira/browse/AIRFLOW-3369
更多推荐
catchup = False,为什么仍要安排两次计划运行?
发布评论