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

Hardcoded u64 for WindowFrameBound fields #3571

Closed
mustafasrepo opened this issue Sep 21, 2022 · 0 comments · Fixed by #3916
Closed

Hardcoded u64 for WindowFrameBound fields #3571

mustafasrepo opened this issue Sep 21, 2022 · 0 comments · Fixed by #3916
Labels
bug Something isn't working

Comments

@mustafasrepo
Copy link
Contributor

Hardcoded u64 for WindowFrameBound fields

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

WindowFrameBound enum takes Option<u64> for Preceding and Following fields. When we run the below query in datafusion (valid in POSTGRESQL).

SELECT 
	COUNT(*) OVER(ORDER BY ts RANGE BETWEEN '1 DAY' PRECEDING AND '1 DAY' FOLLOWING) as cnt 
FROM t

it produces error below.

Error: SQL(ParserError("Expected literal int, found: '1 DAY'"))

Describe the solution you'd like

Instead of Option<u64>, we can use Option<ScalarValue> to support different types such as timestamps.

Describe alternatives you've considered

N.A

Additional context

The relevant code section can be found at the following link.

arrow-datafusion/window_frame.rs at c3bf84e334d6a12c89bacec38e2baa02ca2417ac · apache/arrow-datafusion

@mustafasrepo mustafasrepo added the bug Something isn't working label Sep 21, 2022
@alamb alamb added api change Changes the API exposed to users of the crate and removed api change Changes the API exposed to users of the crate labels Oct 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants