adriangb commented on PR #15566:
URL: https://github.com/apache/datafusion/pull/15566#issuecomment-2796949025

   > I've also thought on Dynamic filter case. Actually they are more flexible 
than normal filters. Normal filters are pulled off from the operator's itself, 
and pushed down as far as possible, and when it's not possible, a FilterExec is 
put accordingly. For the dynamic filters, as they are derived from normal 
filters, the actual filter's itself is not pulled off. So, like normal filters, 
dynamic filters also are pushed down along the plan, and when it's not possible 
to do further, again a normal FilterExec can be inserted for the Dynamic 
filters as well
   
   I don't think dynamic vs. static is the right distinction to make here. IMO 
what really needs to happen is that each node gets to decide what to do with 
the remaining filters, and be able to distinguish between the filters it 
offered up and the ones that came down from parents. So for example a 
`SortExec` will "handle" the filter it injected by doing nothing with it and 
will transmit up the chain that it could not handle any of the filters that 
were passed down.


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