xanderbailey opened a new issue, #3555:
URL: https://github.com/apache/iceberg-rust/issues/3555

   ### Apache Iceberg Rust version
   
   main
   
   ### Describe the bug
   
   `build()` rebinds the default spec with `bind()`, which requires every 
source column to exist, including for `void` fields. Java's `build()` uses 
[`PartitionSpec.checkCompatibility`](https://github.com/apache/iceberg/blob/d31b31c6f4f48bf1460b4d7ff142778359aca529/api/src/main/java/org/apache/iceberg/PartitionSpec.java#L643-L680),
 which skips `void` fields.
   
   So dropping the source column of a `void` partition field in the default 
spec fails in Rust but works in Java. This blocks replace table on v1 tables 
(#3057), where Java replaces removed partition fields with `void`.
   
   ### Expected behavior
   
   `build()` checks the default spec the way Java's `checkCompatibility` does.
   
   ### Willingness to contribute
   
   I can contribute a fix for this bug independently
   


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