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

Support Join pushdown with coercions #6969

Open
findepi opened this issue Feb 19, 2021 · 4 comments
Open

Support Join pushdown with coercions #6969

findepi opened this issue Feb 19, 2021 · 4 comments
Labels
enhancement New feature or request

Comments

@findepi
Copy link
Member

findepi commented Feb 19, 2021

Support Join pushdown when joining eg bigint column with integer column, or when joining varchar(n) with varchar(m) column.

@findepi findepi added the enhancement New feature or request label Feb 19, 2021
@findepi findepi mentioned this issue Feb 19, 2021
8 tasks
@wendigo
Copy link
Contributor

wendigo commented Jun 17, 2021

Is this something to be decided by the connector (we could push types for both sides of the join and connector will decide)? Or should we make it at the engine level?

@findepi
Copy link
Member Author

findepi commented Jun 17, 2021

Currently join pushdown is not attempted at all.
Coercion prevents PushJoinIntoTableScan from even firing up.
We would also need a way to represent CAST in ConnectorExpression.
CAST can be represented as a function call (with some special name) or as an explicit CAST.
The former gives uniformism (cast is a function after all), but the latter would be easier to handle in practice,
and also would not tie into any runtime function transactional resolution problems or anything like that.

cc @losipiuk @martint

@RameshByndoor
Copy link
Member

This is much useful, Most of the queries falls into this category and we see join not getting pushdown.

@sumannewton
Copy link
Contributor

This might be helpful in fetching the wider data type among similar data types.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

No branches or pull requests

4 participants