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

Use GroupsAccumulator exclusively in grouped hash aggregation #175

Merged
merged 2 commits into from
Nov 18, 2024

Conversation

srh
Copy link
Member

@srh srh commented Nov 7, 2024

Makes other AggregateExprs in use GroupsAccumulatorFlatAdapter, and also uses a GroupsAccumulator implementation that has Box inside as a fallback accumulator if some AggregateExpr implementation does not support that.

This fully removes a batch keys and hash table iteration and brings that performance benefit from Sum and Avg to other aggregation types.

Makes other AggregateExprs in use GroupsAccumulatorFlatAdapter, and
also uses a GroupsAccumulator implementation that has Box<dyn
Accumulator> inside as a fallback accumulator if some AggregateExpr
implementation does not support that.

This fully removes a batch keys and hash table iteration and brings
that performance benefit from Sum and Avg to other aggregation types.
@srh srh merged commit fa95bd3 into cube Nov 18, 2024
11 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant