RussellSpitzer commented on code in PR #6680: URL: https://github.com/apache/iceberg/pull/6680#discussion_r1089811146
########## core/src/main/java/org/apache/iceberg/ManifestFilterManager.java: ########## @@ -510,16 +510,19 @@ private Pair<InclusiveMetricsEvaluator, StrictMetricsEvaluator> metricsEvaluator // in other words, ResidualEvaluator returns a part of the expression that needs to be // evaluated // for rows in the given partition using metrics - return metricsEvaluators.computeIfAbsent( - file.partition(), - partition -> { - Expression residual = residualEvaluator.residualFor(partition); - InclusiveMetricsEvaluator inclusive = - new InclusiveMetricsEvaluator(tableSchema, residual, caseSensitive); - StrictMetricsEvaluator strict = - new StrictMetricsEvaluator(tableSchema, residual, caseSensitive); - return Pair.of(inclusive, strict); - }); + PartitionData partition = (PartitionData) file.partition(); Review Comment: Checking fanout writer, it actually does the same pattern I implemented here, but uses StructCopy.copy instead of the PartitionData.copy method. That may be a safer thing to do since technically we are not guaranteed the PartitionData type. -- 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