首页 > 解决方案 > 如果在运行时多次运行同一个 dag 会发生什么?

问题描述

如果同时触发相同的 dag(或运行时间重叠)会发生什么?

询问是因为最近手动触发了一个 dag,当它的实际计划运行时间过去时,它最终仍在运行,此时,从 Web 服务器 UI 的角度来看,它又从头开始运行(我无法再跟踪以前的例子)。这只是“运行实例”超载 dag_id 的情况,还是作业真的重新启动(即先前的进程被杀死)?

标签: pythonairflow

解决方案


据我了解,这取决于触发方式以及 DAG 是否有时间表。如果它基于 DAG 中定义的计划,则说每天运行的任务不完整/仍在工作,并且您单击重新运行,则此任务实例将重新运行。即今天的那个。同样,如果频率是任何其他时间单位。

请注意,也可以在运行气流 trigger_dag 命令时通过 CLI 手动创建 DAG 运行,您可以在其中定义特定的 run_id。在调度程序外部创建的 DAG 运行与触发器的时间戳相关联,并将与调度的 DAG 运行一起显示在 UI 中。

在你的例子中,它听起来像后者。希望有帮助。


推荐阅读