jatorre opened a new pull request, #3643:
URL: https://github.com/apache/iceberg-rust/pull/3643

   ## Which issue does this PR close?
   
   - Closes #3640.
   
   ## What changes are included in this PR?
   
   `ManifestWriter` and `ManifestListWriter` create their Avro writers with 
`Codec::Deflate` instead of `Writer::new` (no `avro.codec` entry, 
uncompressed). PyIceberg 0.12 reads a missing entry as `gzip` and refuses the 
file (apache/iceberg-python#4295), so tables with an iceberg-rust snapshot 
could not be scanned from PyIceberg. Deflate is also what other writers produce 
for manifests, and the files get smaller.
   
   ## Are these changes tested?
   
   `test_manifest_list_writer_v3` now also checks that the header names 
`deflate`. `cargo test -p iceberg --lib spec::manifest` passes (73); clippy and 
rustfmt are clean. End to end, PyIceberg 0.12 scanned a v3 table whose second 
snapshot came from iceberg-rust with this change (and failed without it).
   
   ## AI Disclosure
   
   Drafted with Claude Code (Claude Opus 5.5) at my direction; I ran the tests, 
clippy, rustfmt, ruff, and the end-to-end check described above. Point for 
reviewers: the codec is fixed rather than read from a table property; I can 
make it follow `write.avro.compression-codec` if you prefer.
   


-- 
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