Очень сложная проблема - «Не удалось открыть Hibernate Session для транзакции; вложенное исключение - org.hibernate.SessionException: Session is closed!» - PullRequest
0 голосов
/ 10 апреля 2019

У нас уже несколько месяцев есть проблема, которая убивает нас, и мы вынуждены отскакивать от tomcat - изначально это случалось каждые пару месяцев, но с появлением все большего числа пользователей, это происходит почти ежедневно. Несколько человек смотрели на это, и до сих пор не смогли понять, почему мы получаем это после того, как приложение работает в течение нескольких часов. Мы используем шаблон представления открытого сеанса гибернации, где у нас открыт сеанс гибернации для жизненного цикла запроса / ответа. В настоящее время, после нескольких часов загрузки в производство, мы начинаем получать эту ошибку, и пользователи начинают видеть проблемы, и нам приходится отказов tomcat:

"Не удалось открыть Hibernate Session для транзакции; вложенное исключение - org.hibernate.SessionException: Session is closed!"

We're using hibernate 4.3.11.final, spring 4.3.7.RELEASE, and HikariCP version 3.1.0

Вот параметры, которые мы передаем в пул Hikari.

    <property name="minimumIdle" value="${database.pool.minIdle}" />
    <property name="maximumPoolSize" value="50" />
    <property name="maxLifetime" value="180000" />                              
    <property name="leakDetectionThreshold" value="180000" />           

К сожалению, это приложение довольно старое и использует несколько различных «техник» для доступа к данным - часть кода использует jdbctemplate, часть использует hibernate с сущностями.

Моя последняя мысль: возможно, Хикари закрывает соединение между временем, в течение которого hibernate открывает его в начале цикла запрос / ответ, и концом, когда он закрывается, но это все равно, что найти иголку в стоге сена.

Буду признателен за любую помощь, даже указав в каком-то направлении, спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...