emkornfield commented on code in PR #9125:
URL: https://github.com/apache/iceberg/pull/9125#discussion_r1405545902


##########
format/spec.md:
##########
@@ -607,6 +614,8 @@ Notes:
 
 1. An alternative, *strict projection*, creates a partition predicate that 
will match a file if all of the rows in the file must match the scan predicate. 
These projections are used to calculate the residual predicates for each file 
in a scan.
 2. For example, if `file_a` has rows with `id` between 1 and 10 and a delete 
file contains rows with `id` between 1 and 4, a scan for `id = 9` may ignore 
the delete file because none of the deletes can match a row that will be 
selected.
+3. Floating point partition values are considered equal if their IEEE 754 
floating-point “single format” bit layout
+are equal with NaNs normalized to have only the the most significant mantissa 
bit set (the equivelant of calling `Float.floatToIntBits` or 
`Double.doubleToLongBits` in Java). The Avro specification requires all all 
floating point values are encoded in this format.

Review Comment:
   If we don't define NaN values as equal, as I read the spec there is no way 
to specify positition delete files for values that have an NaN partition value



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

Reply via email to