Hi Team, I was recently contacted by Denis from the Hive project. Their team is implementing multi‑table transactions guarded by Hive locks. When they fail to acquire locks for all tables so the transaction ultimately fails, they want to revert the individual partial changes. Today this cleanup is handled by `BaseTransaction.cleanUpOnCommitFailure`.
They asked whether we could make this method protected [1], so classes extending BaseTransaction could invoke it and remove unused files. While this would be a quick and simple fix for their use case, it feels more natural to expose a new `Transaction.abortTransaction()` method on the public Transaction API. That way, cleanup would be performed explicitly when a user chooses to roll back rather than commit. What do you think? Thanks, Peter [1] - https://github.com/apache/iceberg/issues/15377
