jcsherin commented on PR #11626:
URL: https://github.com/apache/datafusion/pull/11626#issuecomment-2247567650

   
   
   
   > tbh I would be putting this to trait object instead of copying through 
methods.
   
   This does not belong in trait object because this affects only a few 
aggregate functions, not all of them. 
   
   For some aggregate functions the intermediate accumulator state often has:
   1.  a list of items and,
   2.  the type of the item is same as the first argument or the returned value
   ```rust
   Field::new_list( 
       format_state_name(args.name, "distinct_array_agg"), 
       Field::new("item", args.input_type.clone(), true), // [1] should always 
be true
       true,  // [2] or false
   )
   ```
   At first glance it looked like nullable of the list item should be 
configurable. There were also multiple PRs in this direction before  we 
realized it was all unnecessary.
   
   To get rid of the comment duplication, I'll instead move them to a markdown 
doc within `functions-aggregate` and link to it from the comments. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to