in reply to Managing DBI Transactions

I'll second dragonchild's comment - use RaiseError and eval. This is a typical situation where that type of error handling makes the code much more readable, and will avoid processing errors.

Michael