NO transaction, failure after debit  -> alice=60.00 bob=50.00  (money vanished)
@Transactional, failure after debit  -> alice=100.00 bob=50.00  (rolled back)
TransactionalOperator, failure       -> alice=100.00 bob=50.00  (rolled back)
TransactionalOperator, success       -> alice=60.00 bob=90.00  (committed)
@Transactional, CHECK(balance>=0) violated on debit -> DataIntegrityViolationException; alice=100.00 bob=50.00
transfer to a non-existent account   -> no error at all; alice=90.00 (debited, credit hit 0 rows)
