emkornfield commented on code in PR #1876:
URL: https://github.com/apache/iceberg-rust/pull/1876#discussion_r2711093097
##########
crates/iceberg/src/spec/table_properties.rs:
##########
@@ -49,10 +56,70 @@ pub struct TableProperties {
pub write_format_default: String,
/// The target file size for files.
pub write_target_file_size_bytes: usize,
+ /// Compression codec for metadata files (JSON), None means no compression
+ pub metadata_compression_codec: Option<MetadataCompressionCodec>,
/// Whether to use `FanoutWriter` for partitioned tables.
pub write_datafusion_fanout_enabled: bool,
}
+/// Compression codec for metadata files (JSON).
+#[derive(Debug, PartialEq)]
+pub enum MetadataCompressionCodec {
Review Comment:
Note that, that compression codec doesn't actually include GZIP which means
extra validation for this code path. I'm not opposed to it but given that it
will take extra logic to validate valid options for both this PR and the
existing code in puffin to not allow writing GZIP and we also have a different
concept for Avro files in https://github.com/apache/iceberg-rust/pull/1851 it
seems better do the refactoring change in a separate PR once everything is
merged (conveniently reaching the [rule of
3](https://en.wikipedia.org/wiki/Rule_of_three_(computer_programming))?
--
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]