# The same listeners, one publisher call that commits and one that rolls back --- place("ok-1", fail = false) --- OrderService.place: row inserted, publishing @EventListener tx active: true row visible to other connections: false OrderService.place: leaving the method, commit follows BEFORE_COMMIT tx active: true row visible to other connections: false AFTER_COMMIT tx active: true row visible to other connections: true AFTER_COMPLETION tx active: true row visible to other connections: true --- place("bad-1", fail = true) --- OrderService.place: row inserted, publishing @EventListener tx active: true row visible to other connections: false AFTER_ROLLBACK tx active: true row visible to other connections: false AFTER_COMPLETION tx active: true row visible to other connections: false caller saw: IllegalStateException: payment declined --- rows afterwards --- ok-1 rows : 1 bad-1 rows: 0