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

expr: Unify the type infer between frontend and backend #1666

Closed
TennyZhuang opened this issue Apr 7, 2022 · 5 comments
Closed

expr: Unify the type infer between frontend and backend #1666

TennyZhuang opened this issue Apr 7, 2022 · 5 comments
Labels
no-issue-activity type/enhancement Improvements to existing implementation.

Comments

@TennyZhuang
Copy link
Contributor

TennyZhuang commented Apr 7, 2022

It's non-trivial, we need some design work.

@TennyZhuang TennyZhuang added the type/enhancement Improvements to existing implementation. label Apr 7, 2022
@xiangjinwu
Copy link
Contributor

I agree we need better ways to align this part between frontend and backend, but they may not be unified into one. For example, the backend may only do interval * float8 and the frontend will add implicit cast when the right hand side is a int2/int4/int8/numeric/float4.

@TennyZhuang
Copy link
Contributor Author

I agree we need better ways to align this part between frontend and backend, but they may not be unified into one. For example, the backend may only do interval * float8 and the frontend will add implicit cast when the right hand side is a int2/int4/int8/numeric/float4.

In fact, backend can support interval * int16/32/64 #1596, the implicit cast may be avoid? cast has overhead on vectorized execution.

@xiangjinwu
Copy link
Contributor

That also works. But do we intend to avoid inserting implicit cast for all function operands? #1386
Especially, for all functions that accept numbers, do we always generate all combinations?

@wangrunji0408
Copy link
Contributor

Is this done now?

@xiangjinwu
Copy link
Contributor

Is this done now?

Mostly yes, except for some special cases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-issue-activity type/enhancement Improvements to existing implementation.
Projects
None yet
Development

No branches or pull requests

4 participants