From 16abca8d38a30e2efa3b752d375f5ad66e3cddce Mon Sep 17 00:00:00 2001 From: Ryan Hamilton Date: Thu, 15 Oct 2020 14:33:49 -0400 Subject: [PATCH 1/2] Only default the graph auto-refresh to "on" if DAG has RUNNING DagRuns --- airflow/www/templates/airflow/graph.html | 2 +- airflow/www/views.py | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/airflow/www/templates/airflow/graph.html b/airflow/www/templates/airflow/graph.html index 4866cdc357b56..7740839ca243a 100644 --- a/airflow/www/templates/airflow/graph.html +++ b/airflow/www/templates/airflow/graph.html @@ -107,7 +107,7 @@ diff --git a/airflow/www/views.py b/airflow/www/views.py index c5a3a5f7baa34..87b27ee23a841 100644 --- a/airflow/www/views.py +++ b/airflow/www/views.py @@ -1824,6 +1824,11 @@ class GraphForm(DateTimeWithNumRunsWithDagRunsForm): else: external_log_name = None + active_runs = models.DagRun.find( + dag_id=dag_id, + state=State.RUNNING + ) + return self.render_template( 'airflow/graph.html', dag=dag, @@ -1842,7 +1847,8 @@ class GraphForm(DateTimeWithNumRunsWithDagRunsForm): nodes=nodes, edges=edges, show_external_log_redirect=task_log_reader.supports_external_link, - external_log_name=external_log_name) + external_log_name=external_log_name, + active_runs=active_runs) @expose('/duration') @has_dag_access(can_dag_read=True) From b5edbda2c823ddcb3dc7139a04bb82f438e5e73a Mon Sep 17 00:00:00 2001 From: Ryan Hamilton Date: Thu, 15 Oct 2020 17:32:28 -0400 Subject: [PATCH 2/2] Update logic to use dag run state --- airflow/www/templates/airflow/graph.html | 2 +- airflow/www/views.py | 7 +------ 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/airflow/www/templates/airflow/graph.html b/airflow/www/templates/airflow/graph.html index 7740839ca243a..892e2ee9f27ff 100644 --- a/airflow/www/templates/airflow/graph.html +++ b/airflow/www/templates/airflow/graph.html @@ -107,7 +107,7 @@ diff --git a/airflow/www/views.py b/airflow/www/views.py index 87b27ee23a841..342add063c1a0 100644 --- a/airflow/www/views.py +++ b/airflow/www/views.py @@ -1824,11 +1824,6 @@ class GraphForm(DateTimeWithNumRunsWithDagRunsForm): else: external_log_name = None - active_runs = models.DagRun.find( - dag_id=dag_id, - state=State.RUNNING - ) - return self.render_template( 'airflow/graph.html', dag=dag, @@ -1848,7 +1843,7 @@ class GraphForm(DateTimeWithNumRunsWithDagRunsForm): edges=edges, show_external_log_redirect=task_log_reader.supports_external_link, external_log_name=external_log_name, - active_runs=active_runs) + dag_run_state=dt_nr_dr_data['dr_state']) @expose('/duration') @has_dag_access(can_dag_read=True)