Fix dag_version FK constraint violation in db cleanup (#61390) #61435
+286
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SUMMARY
Fix foreign key constraint failures when running
airflow db cleanon thedag_versiontable.Previously, cleanup logic filtered
dag_versionrows only based on timestamp conditions.This allowed deletion attempts for rows still referenced by
task_instance.dag_version_id,causing foreign key constraint errors during database cleanup.
This change excludes
dag_versionrows that are still referenced by:This ensures cleanup respects referential integrity and prevents runtime failures.
ROOT CAUSE
The cleanup query did not account for existing foreign key relationships:
SOLUTION
Add filtering logic to exclude referenced dag_version rows using a subquery union of:
TESTING
closes: #61390
related: #52147
related: #59474