Случайные ошибки типа "Enlisted connection used without active transaction"
В моем приложении Quarkus я получаю
Enlisted connection used without active transaction
ошибки примерно раз в сутки (на публичных API используется довольно много).
Кажется, это исходит от Agroal (здесь https://github.com/agroal/agroal/blob/master/agroal-pool/src/main/java/io/agroal/pool/ConnectionHandler.java#L393).
Согласно трассировке стека, он не работает в разных местах конечных точек REST, помеченных с помощью
@Transactional
.
В PostgreSQL я получаю только следующее:
ERROR: canceling statement due to user request
1 ответ
Я обошел эту проблему, запустив событие, которое прослушивается в методе TransactionPhase.AFTER_SUCCESS (и этот метод отправляет сообщение Kafka).