Airflow 上游任务处于 "none status" 状态,但下游任务已执行

Airflow upstream task in "none status" status, but downstream tasks executed

如截图:

知道为什么会发生这种情况吗?我该如何解决?

--

更新:

它是“none 状态”,而不是我最初解释的“排队”

DAG 运行 发生在 3 月 8 日,最后一次相关提交是在 3 月 1 日。但我找不到相同的 DAG 运行...将继续调查

这不是排队状态。这是 None 状态。

以下情况之一可能会发生这种情况:

  1. 任务 drop_staging_table_if_exists 是在 create_staging_table 开始后添加到 运行。
  2. 任务drop_staging_table_if_exists以前有一个不同的task_id
  3. 任务 drop_staging_table_if_exists 位于工作流的其他位置,您在 DAG 运行 启动后更改了依赖项。

注意 Airflow 目前不支持 DAG 版本控制(在 AIP-36 DAG Versioning 完成后的未来版本中将支持)这意味着 Airflow 不断重新加载 DAG 结构,因此您所做的更改也会反映出来在过去 运行s - 这是设计使然!这对于您想要回填过去 运行s.

的情况非常有用

无论哪种方式,如果您开始新的 运行 或清除这个特定的 运行,您面临的问题就会得到解决。