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

Overflow bug in POW scalar function (found by SQLancer) #11075

Closed
2010YOUY01 opened this issue Jun 23, 2024 · 4 comments · Fixed by #11124
Closed

Overflow bug in POW scalar function (found by SQLancer) #11075

2010YOUY01 opened this issue Jun 23, 2024 · 4 comments · Fixed by #11124
Assignees
Labels
bug Something isn't working

Comments

@2010YOUY01
Copy link
Contributor

Describe the bug

The following statement should return an error instead of directly crash

DataFusion CLI v39.0.0
> select pow(2107754225, 1221660777);
thread 'main' panicked at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/num/mod.rs:358:5:
attempt to multiply with overflow
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Found by SQLancer #11030

To Reproduce

No response

Expected behavior

No response

Additional context

No response

@2010YOUY01 2010YOUY01 added the bug Something isn't working label Jun 23, 2024
@LorrensP-2158466
Copy link
Contributor

take

@LorrensP-2158466
Copy link
Contributor

LorrensP-2158466 commented Jun 23, 2024

this is the third, scalar function that panics instead of returning an error, maybe it's a good idea to open up a separate tracking issue to find all of these cases?
For example GCD and LCM #11057

@2010YOUY01
Copy link
Contributor Author

2010YOUY01 commented Jun 23, 2024

this is the third, scalar function that panics instead of returning an error, maybe it's a good idea to open up a separate tracking issue to find all of these cases? For example GCD and LCM #11057

I think it's a great idea. Those bugs are all very likely only related to function implementation body, and don't require modifying execution core code to fix, we can open a tracking issue for all function-local bugs(and also label "good first issue" if someone wants to help)

Now only just a few types/functions has been fuzzed, I'm expecting more function-local bugs to appear.

Also thank you so much for fixing them @LorrensP-2158466 👍🏼

@LorrensP-2158466
Copy link
Contributor

LorrensP-2158466 commented Jun 23, 2024

Now that only just a few types/functions have been fuzzed, I'm expecting more function-local bugs to appear.

That's right, fixing GCD & LCM was very local, only to the actual implementation of the algorithm, the API already allowed to return error's. I expect that will also be the case for the others.

and also label "good first issue" if someone wants to help

I agree

Thanks! You have made a very cool tool, because I would have never thought about this, and I think a lot of other neither.

This issue was closed.
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