Quarkus w/ hibernate ORM does not throw any exception when database is rolled-back on commit phase
See original GitHub issueDescribe the bug Quarkus with HibernateORM does not throw any exception although database is rolled back on the commit phase.
When Quarkus is combined with HibernateORM and narayana integrations, it also depends on agroal
and agroal-narayana
.
However, agroal-narayana
does not throw appropriate exception on commit phase. (error code of javax.transaction.xa.XAException
is not specified).
This leads Quarkus incompatible to RDBMSs which might roll back on commit phase.
Expected behavior
throw javax.transaction.RollbackException
in Transactionalnterceptor*
Actual behavior do nothing
To Reproduce Steps to reproduce the behavior:
- configure quarkus with hibernate-orm and narayana-jta
- throw any exception in jdbc driver on commit phase
- we cannot catch any exception about it
Environment (please complete the following information):
- Output of
uname -a
orver
:
Darwin o-******-mac.local 19.6.0 Darwin Kernel Version 19.6.0: Sun Jul 5 00:43:10 PDT 2020; root:xnu-6153.141.1~9/RELEASE_X86_64 x86_64
- Output of
java -version
:
openjdk version "12.0.1" 2019-04-16
OpenJDK Runtime Environment (build 12.0.1+12)
OpenJDK 64-Bit Server VM (build 12.0.1+12, mixed mode, sharing)
-
GraalVM version (if different from Java): Not Applicable
-
Quarkus version or git rev:
quarkusPlatformVersion=1.7.0.Final
- Build tool (ie. output of
mvnw --version
orgradlew --version
):
------------------------------------------------------------
Gradle 6.5
------------------------------------------------------------
Build time: 2020-06-02 20:46:21 UTC
Revision: a27f41e4ae5e8a41ab9b19f8dd6d86d7b384dad4
Kotlin: 1.3.72
Groovy: 2.5.11
Ant: Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM: 12.0.1 (Oracle Corporation 12.0.1+12)
OS: Mac OS X 10.15.6 x86_64
Issue Analytics
- State:
- Created 3 years ago
- Reactions:2
- Comments:6 (2 by maintainers)
Top GitHub Comments
thanks @barreiro . Please when you upgrade Agroal it would help if you mark it with “Fixes #issuenumber” on the PR, that would help to track which versions have the bugfixes.
This issue was addressed in AG-158 with feedback from Narayana team. Quarkus
1.13.1
has this fix.