zhang-arvin opened a new pull request, #18433: URL: https://github.com/apache/iceberg/pull/18433
Fixes #18352 The table spec and the OpenAPI spec disagreed on how `binary` and `fixed` values are written as hex strings. `format/spec.md` Appendix D said "Stored as a hexadecimal string" with the lowercase example `"000102ff"` and no case rule, while `rest-catalog-open-api.yaml` (`BinaryTypeValue` / `FixedTypeValue`) said "serialized as an uppercase hexadecimal string". Implementations already differ, and both cases can appear in existing table metadata. This change makes the rule explicit and consistent: - Readers **must** accept either case (lowercase values can already be written by existing implementations, so a stricter rule would break existing tables). - Writers **should** emit uppercase, matching the OpenAPI schema and the reference implementation. - Update the Appendix D example to uppercase (`"000102FF"`) and record the reader/writer rule in the description. - Add the same rule to the `BinaryTypeValue` / `FixedTypeValue` descriptions in the OpenAPI spec, and regenerate `rest-catalog-open-api.py`. -- 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]
