hareshkh opened a new issue, #3409: URL: https://github.com/apache/iceberg-rust/issues/3409
### Apache Iceberg Rust version 0.10.0 ### Describe the bug JSON round-trips reject valid float partition values such as `123.456` because of an absolute `f32::EPSILON` check. `NaN` and `±Infinity` silently become `null` for both float and double partitions, allowing incorrect metadata to be committed. ### To Reproduce 1. Take test_insert_into_partitioned from [datafusion-iceberg PR #54](https://github.com/apache/datafusion-iceberg/pull/54) and run it against the PR’s base commit, which still uses the JSON helpers. 2. Use 100.1 for the finite float partition value. The insert fails with Unable to convert raw literal (double) fail convert to type float. 3. Change it to 1.5, keeping the NaN, Infinity, and -Infinity rows. The insert succeeds, but inspecting the committed manifest shows null for those three partition values. File and row counts still look correct. 4. Repeat with a double partition column: non-finite values also silently become null. ### Expected behavior Preserve valid partition values. Reject unsupported values explicitly instead of silently converting them to null. ### Willingness to contribute None -- 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]
