diff --git a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java index 21c89cf29d9fec..f4046bfaee1233 100644 --- a/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java +++ b/extensions/hibernate-orm/runtime/src/main/java/io/quarkus/hibernate/orm/runtime/session/TransactionScopedSession.java @@ -83,7 +83,7 @@ SessionResult acquireSession() { return new SessionResult(session, false, true); } Session newSession = sessionFactory.openSession(); - newSession.joinTransaction(); + // The session has automatically joined the JTA transaction when it was constructed. transactionSynchronizationRegistry.putResource(sessionKey, newSession); // No need to flush or close the session upon transaction completion: // Hibernate ORM itself registers a transaction that does just that.