Dandandan opened a new pull request, #21622: URL: https://github.com/apache/datafusion/pull/21622
## Summary - Rebased / merged upstream main into PR #15591 (by @Rachelint) and resolved conflicts - Intermediate result blocked approach to aggregation memory management: allocates group state in fixed-size blocks instead of a single growing allocation, reducing copies and improving performance for large aggregations ## Details This is a continuation of https://github.com/apache/datafusion/pull/15591 with upstream/main merged in and conflicts resolved. Key conflict resolutions: - `first_last.rs`: Adopted upstream's refactored `state::take_need`, `extreme_of_each_group_buf` rename, and `self.state.take()` API - `primitive.rs`: Integrated upstream's hash short-circuit optimization (`hash == h &&`) into the blocked group index access pattern - `array_agg.rs`, `state.rs`, `order/mod.rs`: Added `EmitTo::NextBlock` arms to new upstream match expressions - `row_hash.rs`: Fixed `block_size` -> `batch_size` reference, fixed `Box<dyn GroupValues>` coercion - `configs.md`: Took upstream's restructured format and added `enable_aggregation_blocked_groups` entry 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
