manuzhang opened a new pull request, #998: URL: https://github.com/apache/iceberg-cpp/pull/998
Writing a manifest with non-null decimal partition values fails with nanoarrow `EINVAL`, and reading decimal partitions fails with `Unsupported type decimal128 for partition values`. Use a typed decimal128 append helper in the manifest adapter and decode decimal128 values with the partition field's precision and scale in the reader. Add a manifest round-trip regression for format versions 1, 2, and 3 covering positive, negative, zero, null, and values larger than 64 bits. These shared fixes are extracted from #876 so decimal support can be reviewed independently of the metadata tables. Validation: - The regression fails on unchanged main with write errors in all three versions; applying only the writer fix exposes the unsupported decimal reader error in all three versions. - With both fixes, the full `manifest_test` suite passes: 210 passed, 18 skipped. - Pre-commit and `git diff --check` pass. -- 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]
