非常棘手的问题-“无法打开Hibernate Session进行事务;嵌套的异常是org.hibernate.SessionException:会话已关闭!”

时间:2019-04-10 14:57:49

标签: spring hibernate

我们几个月来一直遇到问题,这已经使我们丧命,而且我们不得不为雄猫反弹-最初每隔几个月就会发生一次,但是随着越来越多的用户,它几乎每天都在发生。多个人都在看它,但到目前为止,在应用程序启动几个小时后,我们仍无法弄清为什么会得到这个。我们使用的是休眠打开会话视图模式,其中为请求/响应生命周期打开了一个休眠会话。目前,在生产中加载了大约几个小时后,我们开始出现此错误,并且用户开始看到问题,因此我们必须重新启动tomcat:

  

“无法为事务打开Hibernate会话;嵌套异常是org.hibernate.SessionException:会话已关闭!”

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,一些代码使用实体休眠。

我的最新想法是,Hikari可能会在休眠在请求/响应周期开始时打开它与关闭它时结束之间的时间之间关闭连接,但这就像在大海捞针中找到一根针。

感谢任何帮助,甚至指向一个方向,谢谢

0 个答案:

没有答案