Hi,
When deletion vectors are enabled on a Delta table, is there a guarantee that MERGE, UPDATE, or DELETE operations will not rewrite unmodified data, but rather use deletion vectors to soft delete the original file?
For example, suppose the table currently consists of a single file, a.parquet. If I update a subset of rows in that file using the UPDATE operation, can I rely on the transaction log to record the following sequence of actions?
Remove a.parquet
Add a.parquet with a deletion vector indicating the removed rows
Add a new file (e.g. new.parquet) containing the updated rows
If there’s no such guarantee, could you explain scenarios where deletion vectors might be enabled but still not applied?
Thanks!