Я включил журналы Hibernate на DEBUG и заметил, что у него возникают проблемы с освобождением соединений -
2018-10-09 16: 33: 26,217 TRACE [задание по умолчанию-14] -[org.hibernate.resource.jdbc.internal.ResourceRegistryStandardImpl] Освобождение ресурсов JDBC 2018-10-09 16: 33: 26,217 TRACE [задание по умолчанию-14] - [org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl] Закрытие логического соединения2018-10-09 16: 33: 26,217 DEBUG [задание по умолчанию-14] - [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] не удалось очистить предупреждения: java.sql.SQLException: IJ031070: транзакция не может быть выполнена: STATUS_COMMITTED
Хотя это, похоже, не вызывает ошибок приложения, я крайне обеспокоен тем, что Hibernate может не выпускать свои соединения изящно и, следовательно, может привести к утечке соединения.
Я работаюHibernate с JTA на Wildfly 11 для записи, а конфигурация Session Factory (через Spring) выглядит следующим образом -
hibernate.jta.UserTransaction=UserTransaction
hibernate.cache.infinispan.cachemanager=java:jboss/infinispan/hibernate
hibernate.transaction.coordinator_class=org.hibernate.resource.transaction.backend.jta.internal.JtaTransactionCoordinatorBuilderImpl
hibernate.transaction.jta.platform=org.hibernate.engine.transaction.jta.platform.internal.JBossAppServerJtaPlatform
hibernate.cache.region.factory_class=org.hibernate.cache.infinispan.JndiInfinispanRegionFactory
hibernate.current_session_context_class=jta
Мне кажется, что Hibernate не знает о закрытии транзакций JTA - есть что-то, что я мог пропустить при настройке?