File tree Expand file tree Collapse file tree 1 file changed +14
-4
lines changed
datafusion/functions-aggregate/src Expand file tree Collapse file tree 1 file changed +14
-4
lines changed Original file line number Diff line number Diff line change @@ -759,12 +759,22 @@ fn calculate_percentile<T: ArrowNumericType>(
759759 Some ( values[ 0 ] )
760760 } else if percentile == 0.0 {
761761 // Get minimum value
762- values. sort_by ( cmp) ;
763- Some ( values[ 0 ] )
762+ Some (
763+ values
764+ . iter ( )
765+ . min_by ( |a, b| cmp ( a, b) )
766+ . expect ( "we checked for len > 0 a few lines above" )
767+ . clone ( ) ,
768+ )
764769 } else if percentile == 1.0 {
765770 // Get maximum value
766- values. sort_by ( cmp) ;
767- Some ( values[ len - 1 ] )
771+ Some (
772+ values
773+ . iter ( )
774+ . max_by ( |a, b| cmp ( a, b) )
775+ . expect ( "we checked for len > 0 a few lines above" )
776+ . clone ( ) ,
777+ )
768778 } else {
769779 // Calculate the index using the formula: p * (n - 1)
770780 let index = percentile * ( ( len - 1 ) as f64 ) ;
You can’t perform that action at this time.
0 commit comments