Airflow Backfill DAGは、キューに入れられた(灰色の)状態の最初のタスクで実行されたまま実行されます

Aug 21 2020

この問題に対するstackoverflowで同様の回答を表示しようとしましたが、私の場合は少し異なります。

Airflow CLIを介してバックフィルジョブを実行していますが、バックフィルされたdagの実行が実行状態でスタックし、dagの最初のタスクがキュー(灰色)の状態になります。

スケジューラーが最初のタスクを開始することはないようです。

depends_on_past=Truedag_defaultsとして設定していません

dag_defaults = {
    "start_date": datetime.today() - timedelta(days=2),
    "on_failure_callback": on_failure_callback,
    "provide_context": True
}

すべてのタスクを手動で実行する必要があります。:(スケジューラーにコースを受講させて自動的に実行させるのではなく。

:K8SクラスターのAirflowワーカーポッドを介してbackfillcliコマンドを実行しています。

他の誰かがbackfillcliコマンドを使用して同様の問題に直面しましたか?

更新:バックフィルの実行が合計dag間隔の範囲外であることに気付きました。つまりstart_date、ブロックスケジュールの依存関係を引き起こすダグの前です。

実行を作成することはできますが、自動的には実行されませんが、各タスクを手動で実行できます。

回避策として、を変更しstart_dateて、私の最も古い埋め戻し日の前または日付にする必要があります。

合計間隔にバインドされるのではなく、backfill cmdをオーバーライドする方法、またはその特定のdag_runのstart_dateをモックインできる--forceオプションを提供する方法があれば便利です。

回答

Rogan88 Aug 21 2020 at 20:12

更新:バックフィルの実行が合計dag間隔の範囲外であることに気付きました。つまり、dag start_dateの前に、ブロッキングスケジュールの依存関係が発生します。

実行を作成することはできますが、自動的には実行されませんが、各タスクを手動で実行できます。

回避策として、を変更しstart_dateて、私の最も古い埋め戻し日の前または日付にする必要があります。

合計間隔にバインドされるのではなく、backfill cmdをオーバーライドする方法、またはその特定のdag_runのstart_dateをモックインできる--forceオプションを提供する方法があれば便利です。