@@ -280,7 +280,7 @@ impl<T: ArrowNumericType> Accumulator for MedianAccumulator<T> {
280280///
281281/// For calculating the accurate medians of groups, we need to store all values
282282/// of groups before final evaluation.
283- /// So values in each group will be stored in a `Vec<T>`, so the total group values
283+ /// So values in each group will be stored in a `Vec<T>`, and the total group values
284284/// will be actually organized as a `Vec<Vec<T>>`.
285285///
286286#[ derive( Debug ) ]
@@ -333,9 +333,9 @@ impl<T: ArrowNumericType + Send> GroupsAccumulator for MedianGroupsAccumulator<T
333333 ) -> Result < ( ) > {
334334 assert_eq ! ( values. len( ) , 1 , "one argument to merge_batch" ) ;
335335
336- // The merged values should be organized like as a `ListArray` which is nullable,
337- // but `values` in it is `non-nullable`(`values` with nulls usually generated
338- // from `convert_to_state`) .
336+ // The merged values should be organized like as a `ListArray` which is nullable
337+ // (input with nulls usually generated from `convert_to_state`), but `inner array` of
338+ // `ListArray` is `non-nullable` .
339339 //
340340 // Following is the possible and impossible input `values`:
341341 //
@@ -360,8 +360,8 @@ impl<T: ArrowNumericType + Send> GroupsAccumulator for MedianGroupsAccumulator<T
360360
361361 // Extend values to related groups
362362 // TODO: avoid using iterator of the `ListArray`, this will lead to
363- // many calls of `slice` of its `values` array, and `slice` is not
364- // so efficient.
363+ // many calls of `slice` of its ``inner array` , and `slice` is not
364+ // so efficient(due to the calculation of `null_count` for each `slice`) .
365365 group_indices
366366 . iter ( )
367367 . zip ( input_group_values. iter ( ) )
0 commit comments