You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by gi...@apache.org on 2026/04/13 12:18:54 UTC

(datafusion) 01/01: feat: Add Hash trait to Aggregate enums (#21569)

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch gh-readonly-queue/main/pr-21569-70e77309c66c6615e00c3710ad3472cfb16c23ac
in repository https://gitbox.apache.org/repos/asf/datafusion.git

commit 62b8ec4491d697ede24ba42ec233180e187149f4
Author: Raz Luvaton <16...@users.noreply.github.com>
AuthorDate: Mon Apr 13 15:18:31 2026 +0300

    feat: Add Hash trait to Aggregate enums (#21569)
    
    ## Which issue does this PR close?
    
    N/A
    
    ## Rationale for this change
    
    to be able to derive `Hash`
    
    ## What changes are included in this PR?
    
    derive `Hash`
    
    ## Are these changes tested?
    
    no
    
    ## Are there any user-facing changes?
    yes, new trait impl
---
 datafusion/physical-plan/src/aggregates/mod.rs | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/datafusion/physical-plan/src/aggregates/mod.rs b/datafusion/physical-plan/src/aggregates/mod.rs
index 41782330c3..79a21d1c34 100644
--- a/datafusion/physical-plan/src/aggregates/mod.rs
+++ b/datafusion/physical-plan/src/aggregates/mod.rs
@@ -95,7 +95,7 @@ const AGGREGATION_HASH_SEED: datafusion_common::hash_utils::RandomState =
 ///
 /// See the [table on `AggregateMode`](AggregateMode#variants-and-their-inputoutput-modes)
 /// for how this relates to aggregate modes.
-#[derive(Debug, Copy, Clone, PartialEq, Eq)]
+#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
 pub enum AggregateInputMode {
     /// The stage consumes raw, unaggregated input data and calls
     /// [`Accumulator::update_batch`].
@@ -110,7 +110,7 @@ pub enum AggregateInputMode {
 ///
 /// See the [table on `AggregateMode`](AggregateMode#variants-and-their-inputoutput-modes)
 /// for how this relates to aggregate modes.
-#[derive(Debug, Copy, Clone, PartialEq, Eq)]
+#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
 pub enum AggregateOutputMode {
     /// The stage produces intermediate accumulator state, serialized via
     /// [`Accumulator::state`].
@@ -138,7 +138,7 @@ pub enum AggregateOutputMode {
 ///
 /// Use [`AggregateMode::input_mode`] and [`AggregateMode::output_mode`]
 /// to query these properties.
-#[derive(Debug, Copy, Clone, PartialEq, Eq)]
+#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
 pub enum AggregateMode {
     /// One of multiple layers of aggregation, any input partitioning
     ///


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org