liurenjie1024 commented on issue #585: URL: https://github.com/apache/iceberg-rust/issues/585#issuecomment-2313941236
Hi @a-agmon > Then the predicates needs to be applied as followes: > The impl of the ExecutionPlan::execute() function, calls get_batch_stream(), which in turn calls table.scan() [link](https://github.com/apache/iceberg-rust/blob/905ebd2f332cd37fc86a3ddf845c335229d0abcd/crates/integrations/datafusion/src/physical_plan/scan.rs#L128) > In this function, the predicate can be applied to the TableScanBuilder Yes, that's I think how it should work. > Another important issue is that it seems that according to DataFusion docs, in order to get the filters passed to the scan() function, we need to impl the TableProvider::supports_filters_pushdown to return the filters we can push down [docs] (https://docs.rs/datafusion/41.0.0/datafusion/catalog/trait.TableProvider.html#method.supports_filters_pushdown) > > what do you think? does this make sense? > (as a start I think I will try to implement just BinaryExpressions and see from there) Yes, it makes sense to me. -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org