apache / iceberg-rust

Apache Iceberg
https://rust.iceberg.apache.org/
Apache License 2.0
474 stars 97 forks source link

Add `InclusiveMetricsEvaluator` #347

Closed sdd closed 1 month ago

sdd commented 2 months ago

InclusiveMetricsEvaluator is used inside table scans to filter DataFile entries within a Manifest, rejecting any of them if their metrics indicate that they cannot contain any rows that match the predicate filter.

Comments / suggestions are welcome.

Closes https://github.com/apache/iceberg-rust/issues/127

sdd commented 2 months ago

@marvinlanhenke Thanks for taking the time for the great review. Have addressed your raised points. I'm adding tests based on https://github.com/apache/iceberg/blob/main/api/src/test/java/org/apache/iceberg/expressions/TestInclusiveMetricsEvaluator.java and will submit them over the next day or so, once complete.

sdd commented 2 months ago

FAO @Fokko @liurenjie1024 @marvinlanhenke:

I've finished adding tests for this - it's ready for review, PTAL! 😄