You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2021/09/22 16:53:04 UTC
[airflow] branch main updated: Add cascade to DagRun/TaskInstance
relationship (#18434)
This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 13a558d Add cascade to DagRun/TaskInstance relationship (#18434)
13a558d is described below
commit 13a558d658c3a1f6df4b2ee5d894fee65dc103db
Author: Ephraim Anierobi <sp...@gmail.com>
AuthorDate: Wed Sep 22 17:52:47 2021 +0100
Add cascade to DagRun/TaskInstance relationship (#18434)
* Add cascade to DagRun/TaskInstance relationship
We currently have issue where deleting dagruns causes a dependency error in Sqlalchemy because
the session doesn't know what to do with the related taskinstances.
This PR adds cascade so that when a dagrun is marked for deletion, the related taskinstances
are also deleted
---
airflow/models/dagrun.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/airflow/models/dagrun.py b/airflow/models/dagrun.py
index e805ead..3d50b05 100644
--- a/airflow/models/dagrun.py
+++ b/airflow/models/dagrun.py
@@ -124,7 +124,9 @@ class DagRun(Base, LoggingMixin):
),
)
- task_instances = relationship(TI, back_populates="dag_run")
+ task_instances = relationship(
+ TI, back_populates="dag_run", cascade='save-update, merge, delete, delete-orphan'
+ )
DEFAULT_DAGRUNS_TO_EXAMINE = airflow_conf.getint(
'scheduler',