14

我有一个包含 subdag 的每日 Dag。subdag 有五个任务,T1 到 T5,必须按顺序运行(例如 T1 >> T2 >> T3 >> T4 >> T5)

dag 成功运行了几天,但后来我发现了 T4 的一个错误。我修复了这个错误,并希望在之前的所有日子里只重新运行 T4 和 T5。重要的是不要重新运行 T1-T3,因为这些步骤比 T4-T5 花费的时间要长得多。

我尝试过的失败:

  1. 选择 T4,清除下游+递归 - 没有任何反应。Dag 树视图将 subdag 显示为“成功”,即使其中的 T4 和 T5 已清除。
  2. 选择 T4,清除下游+递归,选择 subdag,仅清除该任务 - 即使 T1-T3 被标记为成功,这将重新运行整个 subdag (T1-T5)
  3. 选择 T4,清除下游+递归,选择 subdag,单击运行 - 与 #2 相同。重新运行整个 subdag。
  4. 选择T4,清除下游+递归,手动设置subdag为“running”状态。什么都没发生。树视图显示处于“运行”状态的子标签,但实际上没有任务运行。

这似乎只是在尝试重新运行 subdag 的一部分时出现的问题。如果我在常规 dag 中有一堆任务,通常在中间选择一个任务并选择清除下游+递归将从该点重新运行 dag。

任何建议,将不胜感激。

4

2 回答 2

15

您可以在 subDAG 中重新启动失败的任务,方法如下:

  • 放大 subDAG,清除失败任务的状态。
  • 返回主 DAG,选择子 DAG。
  • 取消选中递归和/或下游。
  • 清除 subDAG 的状态。
于 2018-06-21T14:01:49.300 回答
0

我使用此命令成功运行 subdag,希望它可以帮助某人:

气流回填 dag_name.subdag_name -s 2018-05-31 -e 2018-05-31 --reset_dagruns

于 2019-09-12T23:40:03.703 回答