Dear all,

I believe we currently have a redundancy in the IRC SetStatisticsUpdate [1].
SetStatisticsUpdate has a required field `snapshot-id` but also a
`StatisticsFile` which in turn contains the `snapshot-id` as required. The
redundant information is used in Java only for an assertion to check if the
ids are identical [2].

Are there any good reasons to keep both `snapshot-id`s? If not I would
propose to deprecate the outer `snapshot-id`.
To remove redundancy in libraries, I am using a custom serializer /
deserializer to handle this in Rust [3].

Let me know what you think!

Thanks,
Christian

[1]:
https://github.com/apache/iceberg/blob/540d6a6251e31b232fe6ed2413680621454d107a/open-api/rest-catalog-open-api.yaml#L2902
[2]:
https://github.com/apache/iceberg/blob/540d6a6251e31b232fe6ed2413680621454d107a/core/src/main/java/org/apache/iceberg/TableMetadata.java#L1314
[3]: https://github.com/apache/iceberg-rust/pull/799

Reply via email to