dramaticlly opened a new pull request, #17118: URL: https://github.com/apache/iceberg/pull/17118
## What Add a new filter overload that invokes a Consumer on each accepted and rejected element, so callers can attribute both kept and skipped entries to metrics in a single pass. ## Why This help provide a path for hetergeneous entry of `TrackedFile` in v4, where a given entry can carry contentType of DATA, EQUALITY_DELETES, DATA_MANIFEST, or DELETE_MANIFEST within a single root manifest. Callback is better suited than a dedicated counter to allow more flexibility. Plus, import `org.apache.iceberg.metrics.Counter` in `org.apache.iceberg.io. CloseableIterable` is not ideal for a general purpose iteration utility. ## Existing caller Migrate the manifest-level scan pipelines in `DeleteFileIndex`, `PositionDeletesTable`, and `ManifestGroup` where each previously chained a skip-counting filter with a scan-counting count call. Now replaced with a single filter call with both onKeep and onSkip callback. File-level filters in ManifestReader and ManifestGroup remain on the counter-based overload since ScanMetrics only exposes a skipped counter at that layer. -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
