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]

Reply via email to