alamb opened a new pull request #9692:
URL: https://github.com/apache/arrow/pull/9692


   # NOTE:
   Since is a fairly major backwards incompatible change (many callsites need 
to be updated, though mostly mechanically), I have opened this PR with an 
example of how it would work for a few callsites, and wanted to gauge community 
interest before getting the whole thing working.
   
   It is part of my overall plan to make the DataFusion optimizer more 
idiomatic and do much less copying 
[ARROW-11689](https://issues.apache.org/jira/browse/ARROW-11689)
   
   # Rationale:
   All callsites currently need an owned `Vec` (or equivalent) so they can pass 
in `&[Expr]` and then Datafusion copies all the `Expr`s. Many times the 
original `Vec<Expr>` is discarded immediately after use (I'll point out where 
this happens in a few places below). Thus I it would better (more idiomatic and 
often less copy/faster) to take something that could produce an iterator over 
Expr
   
   # Changes
   Change `Dataframe` / `LogicalPlanBuilder` so it takes `Vec<Expr>` rather 
than `&[Expr]`
   
   


----------------------------------------------------------------
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.

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


Reply via email to