gatesn commented on issue #14993:
URL: https://github.com/apache/datafusion/issues/14993#issuecomment-2703471110

   > I can imagine situations where it wants to handle certain branches / 
conditions but would rather not re-implement others.
   
   Given these are DataFusion scalar expressions (rather than any relational 
algebra), can the implementation not just invoke the expression as a fallback?
   
   --
   
   With Vortex, we've gone one step further and the scan accepts `projection: 
Expr, filter: Option<Expr>` where projection can arbitrarily select columns and 
apply scalar expressions to them. While this may be a little _too_ general for 
DataFusion, it works well provided the system has good support for struct types 
and expressions for manipulating them. We have select (to select/exclude fields 
from a struct), pack (to assemble fields into a new struct), getitem (to 
extract a field from a struct), and merge (to union multiple structs, although 
this can be implemented with getitem+pack).
   
   However this does have the downside of pushing disproportionate complexity 
onto the TableProvider for the simple case of projecting out a few columns.


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