[英]Airflow xcom_pull is not giving the data of same upstream task instance run, instead gives most recent data
[英]Why is airflow not running the most recent task
我已經使用以下參數設置了一個 dag
local_tz = pendulum.timezone('US/Eastern')
default_args = {
'retries': 3,
'retry_delay': timedelta(minutes=5)
}
dag = DAG(
dag_id='some_dag',
start_date=datetime(2021, 1, 8, tzinfo=local_tz),
schedule_interval='0 16 8 * *',
default_args=default_args,
catchup=True
)
我預計最近的任務運行在 5 月 8 日,但是,我只看到 2 月 8 日、3 月 8 日和 4 月 8 日。 我似乎無法弄清楚為什么 Airflow 會在四月停止。
現在是 5 月 25 日,所以 5 月 8 日的每日運行不應該與其他月份一起回填嗎? 需要明確的是,我今天剛剛部署了這個 dag,所以所有執行的 dag 運行,包括丟失的 5 月 8 日都是回填。
這是意料之中的。 正如您提到的 Airflow 在間隔結束時安排任務。 根據您的設置,調度將如下所示:
第1st
運行將於2021-02-08
年 2 月 8 日開始本次運行execution_date
日期為2021-01-08
年 1 月 8 日
2nd
輪將於 2021 年 3 月 8 日開始, 2021-03-08
execution_date
日期為2021-02-08
年 2 月 8 日
第3th
次運行將於2021-04-08
開始,本次運行execution_date
日期為2021-03-08
第4th
運行將於2021-05-08
年 5 月 8 日開始本次運行execution_date
日期為2021-04-08
年 4 月 8 日
第5th
運行將於2021-06-08
年 6 月 8 日開始本次運行execution_date
日期為2021-05-08
年 5 月 8 日
由於您實際上將 DAG 設置為在 2021 年 5 月 26 日開始, 2021-05-26
在1st-4th
運行時執行,因為這些運行的間隔已經結束。 第5th
輪尚未開始,因為間隔尚未結束,它將在2021-06-08
結束。
您可以在此答案中閱讀有關 Airflow 行為如此的更廣泛的解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.