-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Investigate and reduce runtime type coercion in aggregates like sum
#2447
Comments
@alamb I can take this if you dont mind |
I added this to #2355 |
the same pattern used in I'm trying to figure out if |
@alamb sorry for delay, I stuck investigating all that datatypes. |
I think this I think this ticket is no longer tracking anything actionable -- I expect more performance improvements from #4973 |
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
There is casting logic in aggregates that handles coercing inputs to aggregates
https://github.com/apache/arrow-datafusion/blob/6b4bbd0/datafusion/physical-expr/src/aggregate/sum.rs#L224-L316
On the surface doing these casts in
sum.rs
appears to duplicates some non trivial amount of the logic in plan timecoercion -- maybe it would be possible to make this code cleaner / consolidate more of the coercion logic.Describe the solution you'd like
Ensure types are known prior to executing the aggregate so that the input and aggregate types are known aprior
Describe alternatives you've considered
Not sure (maybe the code is needed, it just "feels" a bit wrong)
Additional context
#2405 (comment)
cc @WinkerDu
The text was updated successfully, but these errors were encountered: