bethvourc opened a new pull request, #4221:
URL: https://github.com/apache/iceberg-python/pull/4221

   Closes #4192
   
   ## Rationale for this change
   
   `Transaction.dynamic_partition_overwrite` wrote its data files using the
   committed table metadata, but built its delete filter from the transaction's
   metadata. After an `update_spec` in the same transaction, the two disagree on
   the partition spec, so the wrong rows can be deleted and new files recorded
   under the wrong partition. After an in-transaction `add_column`, it raises
   `ValueError` instead.
   
   This passes `self.table_metadata` to `_dataframe_to_data_files`, matching
   `append`, `overwrite` and `delete`.
   
   ## Are these changes tested?
   
   Yes. Two new tests cover `update_spec` and `add_column` inside a transaction.
   Both fail without the fix and pass with it. The full unit suite, the Docker
   integration suite and the lint hooks pass locally.
   
   ## Are there any user-facing changes?
   
   Yes, only as the bug fix: both cases now behave correctly.
   


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