I can’t find the sentance I’m looking for in the documentation. Imagine you use Spring and some app code throws an exception, then Spring rolls back the transaction and then(?) the calling code can continue. Or does the calling code continue while the rollback is still taking place?
In other words: Is it guranteed that the database completed the rollback before the calling code received the handle again?
Yes, it’s guaranteed. Everything is sequential.
rollback()rollbacks the transaction, and when it returns, the transaction has been rollbacked.