tanmayrauth commented on issue #1091:
URL: https://github.com/apache/iceberg-go/issues/1091#issuecomment-4488694665

   Good catch, this is a valid bug. The strict evaluator must be conservative 
when information is missing: for a nullable field, absent null counts means 
unknown, not zero.                                   
   
   Java's StrictMetricsEvaluator handles this by treating a missing nullCounts 
entry for an optional field as "may contain nulls" (returns 
ROWS_MIGHT_NOT_MATCH). We should match that behavior.  The fix is 
straightforward, canContainNulls should return true (conservatively assume 
nulls may exist) when the field is optional and the count is absent. Same 
applies to canContainNans for float types.  
   
   Happy to review a PR for this. A regression test as you described (data file 
with bounds present but no null-count entry for an optional field, asserting 
strict eval returns false for id > 0) would be  ideal.    


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

Reply via email to