Prevent DetachedInstanceError when processing executor event#54331
Closed
kaxil wants to merge 1 commit intoapache:mainfrom
Closed
Prevent DetachedInstanceError when processing executor event#54331kaxil wants to merge 1 commit intoapache:mainfrom
DetachedInstanceError when processing executor event#54331kaxil wants to merge 1 commit intoapache:mainfrom
Conversation
78fa9be to
d932b79
Compare
Similar to apache#53838 but prevents it for all queries needing `consumed_asset_events`. Instead of adding `.selectinload(DR.consumed_asset_events))` wherever needed, I am eagerly loading them now. Changes: - Add lazy='selectin' to `DagRun.consumed_asset_events` relationship for always-eager loading - Changed `backref` to `back_populates` in `AssetEvent.created_dagruns` to enable explicit control Why This Fix Works: - Eliminates lazy loading entirely by pre-loading the relationship at the model level - Prevents dependency on consistent session state in concurrent scheduler operations Closes apache#54306
d932b79 to
964e710
Compare
kaxil
added a commit
to astronomer/airflow
that referenced
this pull request
Aug 11, 2025
Similar to apache#53838 and alternative for apache#54331 This is a more localized change and only eagerly loads for this specific instance. Closes apache#54306
potiuk
approved these changes
Aug 11, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Similar to #53838 but prevents it for all queries needing
consumed_asset_eventsas mentioned in Future Considerations section. Alternative to #54334Instead of adding
.selectinload(DR.consumed_asset_events))wherever needed, I am eagerly loading them now.Changes:
DagRun.consumed_asset_eventsrelationship for always-eager loadingbackreftoback_populatesinAssetEvent.created_dagrunsto enable explicit controlWhy This Fix Works:
Closes #54306
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rstor{issue_number}.significant.rst, in airflow-core/newsfragments.