Skip to content

Commit 8beaaee

Browse files
committed
Add built-in operator statistics providers
Adds chain-of-responsibility providers for common physical operators: - FilterStatisticsProvider: selectivity-based output estimation using pre-enhanced child statistics, with post-filter NDV adjustment - ProjectionStatisticsProvider: passthrough with column mapping - PassthroughStatisticsProvider: cardinality-preserving operators (Sort, Repartition, Window, etc.) via CardinalityEffect - AggregateStatisticsProvider: NDV-product estimation for GROUP BY, delegates for Partial mode and multiple grouping sets (apache#20926)
1 parent ab23d15 commit 8beaaee

File tree

2 files changed

+1139
-43
lines changed

2 files changed

+1139
-43
lines changed

datafusion/physical-plan/src/filter.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ impl FilterExec {
340340
}
341341

342342
/// Calculates `Statistics` for `FilterExec`, by applying selectivity (either default, or estimated) to input statistics.
343-
fn statistics_helper(
343+
pub(crate) fn statistics_helper(
344344
schema: &SchemaRef,
345345
input_stats: Statistics,
346346
predicate: &Arc<dyn PhysicalExpr>,

0 commit comments

Comments
 (0)