Skip to content

Commit

Permalink
Remove unused code
Browse files Browse the repository at this point in the history
  • Loading branch information
mustafasrepo committed Dec 27, 2023
1 parent 202936d commit 05bdc81
Showing 1 changed file with 0 additions and 39 deletions.
39 changes: 0 additions & 39 deletions datafusion/physical-plan/src/aggregates/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -101,34 +101,6 @@ impl AggregateMode {
}
}

/// Group By expression modes
///
/// `PartiallyOrdered` and `FullyOrdered` are used to reason about
/// when certain group by keys will never again be seen (and thus can
/// be emitted by the grouping operator).
///
/// Specifically, each distinct combination of the relevant columns
/// are contiguous in the input, and once a new combination is seen
/// previous combinations are guaranteed never to appear again
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum GroupByOrderMode {
/// The input is known to be ordered by a preset (prefix but
/// possibly reordered) of the expressions in the `GROUP BY` clause.
///
/// For example, if the input is ordered by `a, b, c` and we group
/// by `b, a, d`, `PartiallyOrdered` means a subset of group `b,
/// a, d` defines a preset for the existing ordering, in this case
/// `a, b`.
PartiallyOrdered,
/// The input is known to be ordered by *all* the expressions in the
/// `GROUP BY` clause.
///
/// For example, if the input is ordered by `a, b, c, d` and we group by b, a,
/// `Ordered` means that all of the of group by expressions appear
/// as a preset for the existing ordering, in this case `a, b`.
FullyOrdered,
}

/// Represents `GROUP BY` clause in the plan (including the more general GROUPING SET)
/// In the case of a simple `GROUP BY a, b` clause, this will contain the expression [a, b]
/// and a single group [false, false].
Expand Down Expand Up @@ -267,17 +239,6 @@ impl From<StreamType> for SendableRecordBatchStream {
}
}

/// A structure representing a group of aggregate expressions where each group has different
/// ordering requirements. Aggregate groups are calculated using `get_aggregate_expr_groups` function.
/// Indices refers to the position of each aggregate expressions among all aggregate expressions (prior to grouping).
#[derive(Clone, Debug, PartialEq)]
pub struct AggregateExprGroup {
/// Aggregate expressions indices
indices: Vec<usize>,
/// Requirement
requirement: LexOrdering,
}

/// Hash aggregate execution plan
#[derive(Debug)]
pub struct AggregateExec {
Expand Down

0 comments on commit 05bdc81

Please sign in to comment.