[5.0.1] Generate the correct overload for excluding tables for owned types. #23178
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.
Fixes #23137
Description
The fix does the following:
DropForeignKey
or data operations for excluded tables.false
if it was not specified.Customer Impact
When an owned entity type is excluded from migrations we generate an incorrect API call in the model snapshot that needs to be fixed manually. And when the next migration is created a
DropForeignKey
operation is generated for the foreign key to owner even though no operations should be created for tables excluded from migrations. This operation needs to be removed manually.If both the owner and owned types are mapped to the same table and only the owner is excluded the generated snapshot throws an exception and needs to be fixed manually.
How found
Reported by user on RC2
Test coverage
This PR includes tests for the affected scenario.
Regression?
No, this only affects exclude table from migrations - a new feature in 5.0
Risk
Low. The fix only affects models with table excluded from migrations and the modified code is used only at design-time.