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

Translate array parameter patterns via unnest #2677

Closed
roji opened this issue Mar 7, 2023 · 1 comment
Closed

Translate array parameter patterns via unnest #2677

roji opened this issue Mar 7, 2023 · 1 comment
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@roji
Copy link
Member

roji commented Mar 7, 2023

We recognize certain specific patterns involving array parameters and translate these (see docs); but the list is limited.

For any other pattern involving an array of scalars, we can simply translate that to a pseudo-table using unnest. At that point, the regular EF query pipeline should kick in and allow us to translate anything EF supports, as if it were just another table.

Note that this should only be a fallback; the specialized translations should take precedence as they're better and probably more efficient.

PS Pay special attention to the ordering guarantees of the rowset coming out of unnest; we probably need to add an ORDER BY to preserve it.

@roji roji added the enhancement New feature or request label Mar 7, 2023
@roji roji added this to the 8.0.0 milestone Mar 7, 2023
@roji
Copy link
Member Author

roji commented Mar 8, 2023

See some EF-side implementation notes in dotnet/efcore#30426 (comment)

@roji roji self-assigned this Apr 20, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 20, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 23, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 23, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 25, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 25, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 25, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 28, 2023
roji added a commit to roji/efcore.pg that referenced this issue Apr 28, 2023
roji added a commit to roji/efcore.pg that referenced this issue May 18, 2023
roji added a commit to roji/efcore.pg that referenced this issue May 20, 2023
@roji roji closed this as completed in 6905ca9 May 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant