Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate that the main fragment of optional dependents that use table sharing have at least one required non-shared property #29277

Merged
merged 1 commit into from
Oct 6, 2022

Conversation

AndriySvyryd
Copy link
Member

Fixes #29079

Customer Impact

When querying optional dependents using table sharing normally EF determines whether they exist by checking all required non-shared columns for NULLs. However, if they are also using entity splitting EF would need to check all table fragments which would be suboptimal from a perf standpoint. Currently EF will only check the properties on the main fragment and the added validation will throw for models that could produce invalid results.

Regression?

No. Entity splitting is a new feature.

Risk

Low. This change is constrained to model validation.

Verification

Added a test for the affected scenario.

… sharing have at least one required non-shared property

Fixes #29079
@rbhanda rbhanda added this to the 7.0.0 milestone Oct 6, 2022
@AndriySvyryd AndriySvyryd changed the title [release/7.0] Validate that the main fragment of optional dependents that use table sharing have at least one required non-shared property Validate that the main fragment of optional dependents that use table sharing have at least one required non-shared property Oct 6, 2022
@AndriySvyryd AndriySvyryd merged commit 96ce1d9 into release/7.0 Oct 6, 2022
@AndriySvyryd AndriySvyryd deleted the Issue29079 branch October 6, 2022 18:00
@ajcvickers ajcvickers removed this from the 7.0.0 milestone Jan 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants