iceberg-rust
iceberg-rust copied to clipboard
Deletes passed to `TableTransaction.append_delete()` get silently lost
Steps to reproduce
let mut tx = table.new_transaction(None);
tx = tx.append_data(data_file);
tx = tx.append_delete(delete_file);
tx.commit().await;
Observed behavior
- The commit does not include
delete_file
Expected behavior
- The commit should include
delete_file. Alternatively if such a transaction is not supported then thetx.append_*call should error out.
Notes
- if
.append_deleteis reordered before.append_datathen everything works as expected - if
.append_deleteis on its own without.append_datathen everything works as expected