Another possibility is that I can simply move the `rescue` guard into `commit_transaction` itself