我一直在玩 SubDAG。我遇到的一个大问题是,每当 SubDAG 中的某些内容失败时,我通过点击 Clear 重新运行,只有已清除的任务才会重新运行;成功不会传播到 SubDAG 中的下游任务并使它们运行。

如何在 SubDAG 中重新运行失败的任务,以便下游任务正确流动?现在,我必须从字面上重新运行失败任务下游的 SubDAG 中的每个任务。

我想我遵循了 SubDAG 的最佳实践; SubDAG 尽可能继承父 DAG 属性(包括 schedule_interval ),并且我不会在 UI 中打开 SubDAG;父 DAG 已打开并改为触发它。

最佳答案

有点解决方法,但如果您始终为您的任务提供 task_id -s,您可以尝试从 Airflow CLI(命令行界面)回填:

airflow backfill -t TASK_REGEX ... dag_id

其中 TASK_REGEX 对应于您要重新运行的任务及其依赖项的命名模式。

(记得添加 the command line options 的其余部分,如 --start_date )。

关于python - 重新运行失败的 SubDAG,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49947307/

10-16 08:42