【问题标题】:AirFlow DAG Get stuck in running stateAirFlow DAG 卡在运行状态
【发布时间】:2018-07-10 09:36:05
【问题描述】:

我创建了一个 dag 并每天安排它。 它每天都在排队,但任务实际上并没有运行。 这个问题在过去here 已经提出,但答案对我没有帮助,所以似乎还有另一个问题。

我的代码在下面共享。我用评论替换了任务 t2 的 SQL。 当我使用“气流测试...”在 CLI 上单独运行每个任务时,每个任务都会成功运行。

您能解释一下应该怎样做才能使 DAG 运行吗? 谢谢!

这是 DAG 代码:

from datetime import timedelta, datetime
from airflow import DAG
from airflow.contrib.operators.bigquery_operator import BigQueryOperator



default_args = {
    'owner' : 'me',
    'depends_on_past' : 'true',
    'start_date' : datetime(2018, 06, 25),
    'email' : ['myemail@moovit.com'],
    'email_on_failure':True,
    'email_on_retry':False,
    'retries' : 2,
    'retry_delay' : timedelta(minutes=5)
}


dag = DAG('my_agg_table',
default_args = default_args,
schedule_interval = "30 4 * * *"
)



t1 = BigQueryOperator(
    task_id='bq_delete_my_agg_table',
    use_legacy_sql=False,
    write_disposition='WRITE_TRUNCATE',
    allow_large_results=True,
    bql='''
    delete `my_project.agg.my_agg_table`
    where date = '{{ macros.ds_add(ds, -1)}}'
    ''',
    dag=dag)

t2 = BigQueryOperator(
    task_id='bq_insert_my_agg_table',
    use_legacy_sql=False,
    write_disposition='WRITE_APPEND',
    allow_large_results=True,
    bql='''
    #standardSQL
    Select ... the query continue here.....
    ''',    destination_dataset_table='my_project.agg.my_agg_table',
    dag=dag)


t1 >> t2

【问题讨论】:

    标签: airflow


    【解决方案1】:

    通常很容易找出任务未运行的原因。在 Airflow 网页界面中时:

    • 选择任何感兴趣的 DAG
    • 现在点击任务
    • 再次点击Task Instance Details
    • 在第一行有一个面板Task Instance State
    • 在旁边的 Reason 框中是运行任务的原因 - 或忽略任务的原因

    检查第一个未执行的任务通常是有意义的,因为我看到您设置了depends_on_past=True,如果在错误的情况下使用可能会导致问题。

    在此处了解更多信息:Airflow 1.9.0 is queuing but not launching tasks

    【讨论】:

    • 谢谢,tobi6!。您的指示非常有帮助,并暴露了一个可能的原因。问题尚未解决,因为 DAG 仍然卡住,但也许这是另一个问题。在任务实例详细信息中,depends_on_past 现在为 false,但一条错误消息显示“对于此任务的 DAG,depends_on_past 为 true,但之前的任务实例尚未运行”。
    • 我接受了答案,谢谢。是的,在我在上面添加评论之前,我重新启动了调度程序和网络服务器。
    • 奇怪。您可能必须重命名 DAG,例如。添加 _v1: my_agg_table_v1 然后再次检查。
    • 谢谢。重命名工作。至少在最初的运行中。希望它在每日计划的运行中继续运行而不会出现问题。
    猜你喜欢
    • 1970-01-01
    • 2021-12-27
    • 1970-01-01
    • 2019-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多