Skip to content

New EF.Constant handling#34297

Merged
cincuranet merged 2 commits intodotnet:mainfrom
cincuranet:ef-constant
Aug 11, 2024
Merged

New EF.Constant handling#34297
cincuranet merged 2 commits intodotnet:mainfrom
cincuranet:ef-constant

Conversation

@cincuranet
Copy link
Copy Markdown
Contributor

Fixes #33674

@cincuranet cincuranet requested a review from roji July 26, 2024 17:55
Comment thread src/EFCore/Query/Internal/ExpressionTreeFuncletizer.cs
Comment thread src/EFCore/Query/QueryCompilationContext.cs Outdated
@cincuranet cincuranet changed the title [WIP] New EF.Constant handling New EF.Constant handling Jul 31, 2024
@cincuranet cincuranet marked this pull request as ready for review July 31, 2024 16:00
@cincuranet cincuranet requested a review from roji July 31, 2024 16:00
Copy link
Copy Markdown
Member

@roji roji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Really good first attempt @cincuranet, this covers many parts of the query pipeline and it's great to see all this work. See below for all my comments.

Note that it would be good to add some tests which cover the bugs in the current implementations (e.g. inline collection with a single scalar parameter, which shouldn't get treated as a "values parameter").

Comment thread src/EFCore.Cosmos/Properties/CosmosStrings.Designer.cs Outdated
Comment thread src/EFCore.Cosmos/Properties/CosmosStrings.resx Outdated
Comment thread src/EFCore.Relational/Query/IRelationalParameterBasedSqlProcessorFactory.cs Outdated
Comment thread src/EFCore/Query/Internal/ExpressionTreeFuncletizer.cs Outdated
Comment thread src/EFCore/Query/Internal/ExpressionTreeFuncletizer.cs Outdated
Comment thread src/EFCore/Query/QueryRootProcessor.cs Outdated
Comment thread src/EFCore.Design/Query/Internal/LinqToCSharpSyntaxTranslator.cs Outdated
Comment thread src/EFCore.Relational/Query/SqlNullabilityProcessor.cs
@cincuranet
Copy link
Copy Markdown
Contributor Author

/azp run

@azure-pipelines
Copy link
Copy Markdown

Pull request contains merge conflicts.

@cincuranet cincuranet requested a review from roji August 8, 2024 10:00
@cincuranet
Copy link
Copy Markdown
Contributor Author

@roji This is ready for another review pass.

Copy link
Copy Markdown
Member

@roji roji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost LGTM, see only nits below 🎉

Can fix the nits, but please don't merge yet though - I want to take a look at the precompiled query code there.

Comment thread src/EFCore.Relational/Query/IRelationalParameterBasedSqlProcessorFactory.cs Outdated
Comment thread src/EFCore/Properties/CoreStrings.Designer.cs Outdated
Comment thread src/EFCore/Properties/CoreStrings.resx Outdated
Comment thread src/EFCore/Query/QueryCompilationContext.cs Outdated
Comment thread test/EFCore.Specification.Tests/Query/PrimitiveCollectionsQueryTestBase.cs Outdated
Comment thread test/EFCore.Specification.Tests/Query/PrimitiveCollectionsQueryTestBase.cs Outdated
Comment thread src/EFCore.Relational/Query/RelationalShapedQueryCompilingExpressionVisitor.cs Outdated
@cincuranet cincuranet enabled auto-merge (squash) August 11, 2024 12:40
@cincuranet cincuranet merged commit ab30db3 into dotnet:main Aug 11, 2024
@cincuranet cincuranet deleted the ef-constant branch August 11, 2024 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reimplement EF.Constant without introducing constant nodes in the funcletizer

2 participants