Right now, the MethodInterceptor marking successful transactional event listener invocations as completed is ordered behind the transaction one. As it suppresses exceptions thrown by the listener, we need to make sure it is ordered between the one controlling the asynchronous method invocation and the one managing transactions so that the exception can still roll back the transaction but then still be handled by not marking the publication completed.