marvinlanhenke opened a new pull request, #360:
URL: https://github.com/apache/iceberg-rust/pull/360

   ### Which issue does this PR close?
   Closes #359
   
   ### Rationale for this change
   The `partition_filter` (inclusive projection) is not only required by the 
`ManifestEvaluator` but also by the (incoming) `ExpressionEvaluator`. In order 
to avoid duplicate code as well as unnecessary computation of the partition 
filters, we should extract the computation of the partition filters and cache 
the results per partition_spec_id.
   
   With this refactor we (hopefully) should be able to integrate the 
`ExpressionEvaluator` and the `InclusiveMetricsEvaluator` more easily.
   
   ### What changes are included in this PR?
   - refactor: Extract and decouple computation of partition filters from 
construction logic of ManifestEvaluator
   - refactor: testsuite ManifestEvaluator
   - refactor: add FileScanStreamContext + helper fn to construct 
partition_spec & schema
   - refactor: add thin wrapper for PartitionFileCache & ManifestEvaluatorCache 
for better encapsulation
   
   ### Are these changes tested?
   Yes. Unit tests are included.
   If PR is okay; I will add some basis tests for the new structs 
(FileScanStreamContext, etc.) as well. 


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

Reply via email to