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

[release/3.1] Query: Unwind nested invocation expressions #22472

Merged
merged 1 commit into from
Sep 10, 2020

Conversation

smitpatel
Copy link
Member

Resolves #19511

Port of #19514

Description
In 2.x query pipeline when we used Remotion.Linq library to normalize expression tree into query model, it also inlined all invocation expressions. In 3.1 we added code in our pipeline to do inilining but it was not applying it recursively.

Customer Impact
Customers using nested invocations to build expression tree get an exception with translation error.

How found
Customers reported that they are facing issue with invocation expressions even after the fix we added in 3.1.

Test coverage
Regression test added to verify that we cover recursive case.

Regression?
Yes, from EF Core 2.x to 3.1 as 2.x pipeline normalized this through external library.

Risk
Very low. Visiting recursively should be no-op if not the case of invocation. Also this fix has been released in 5.0 preview1 and we haven't had any feedback of anything breaking.

Resolves #19511
Issue: When we unwound the first level, we did not visit it recursively.
@smitpatel smitpatel mentioned this pull request Sep 10, 2020
@ajcvickers ajcvickers added this to the 3.1.x milestone Sep 10, 2020
@leecow leecow modified the milestones: 3.1.x, 3.1.9 Sep 10, 2020
@ajcvickers
Copy link
Member

@smitpatel Approved for 3.1.9.

@smitpatel smitpatel merged commit 44ed5f3 into release/3.1 Sep 10, 2020
@smitpatel smitpatel deleted the smit/StrawberryPatch branch September 10, 2020 20:51
@ajcvickers ajcvickers removed this from the 3.1.9 milestone Dec 11, 2020
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