apache / iceberg-rust

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

Refactor: Extract `partition_filters` out of `ManifestEvaluator` #359

Closed marvinlanhenke closed 2 months ago

marvinlanhenke commented 2 months ago

Problem:

  1. The partition_filter is also required by the ExpressionEvaluator; thus should be moved outside ManifestEvaluator; cached by spec_id in scan.rs and then used by ExpressionEvaluator as well as the ManifestEvaluator
  2. Also fn create_manifest_evaluator + ManifestEvaluator::new both do some setup work; here I'd propose to move the setup code completely into fn create_manifest_evaluator and avoid splitting the setup over mutliple places
marvinlanhenke commented 2 months ago

I also like to work on this one; since it kind of blocks #358.