Skip to content

Commit 09fecca

Browse files
committed
Return error for var(distinct)
1 parent 758ff77 commit 09fecca

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

datafusion/functions-aggregate/src/variance.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ use arrow::{
2525
datatypes::{DataType, Field},
2626
};
2727

28-
use datafusion_common::{downcast_value, plan_err, DataFusionError, Result, ScalarValue};
28+
use datafusion_common::{downcast_value, not_impl_err, plan_err, DataFusionError, Result, ScalarValue};
2929
use datafusion_expr::{
3030
function::{AccumulatorArgs, StateFieldsArgs},
3131
utils::format_state_name,
@@ -100,7 +100,11 @@ impl AggregateUDFImpl for VarianceSample {
100100
])
101101
}
102102

103-
fn accumulator(&self, _acc_args: AccumulatorArgs) -> Result<Box<dyn Accumulator>> {
103+
fn accumulator(&self, acc_args: AccumulatorArgs) -> Result<Box<dyn Accumulator>> {
104+
if acc_args.is_distinct {
105+
return not_impl_err!("VAR(DISTINCT) aggregations are not available")
106+
}
107+
104108
Ok(Box::new(VarianceAccumulator::try_new(StatsType::Sample)?))
105109
}
106110

0 commit comments

Comments
 (0)