在JBoss中没有事务的Lingering Hibernate会话

时间:2009-12-02 12:14:10

标签: hibernate spring jboss

我遇到了一个Hibernate问题,我无法找到解决办法。我们在JBoss 4.2.0上运行Hibernate 3.2.6,在JBossWS 2.0.1后面的Spring 2.5.4应用程序中运行(只是为了获得表中的所有版本)。

通常情况下这很好用,但有时系统自发地(即出于某种原因目前不知道我们)进入一个状态,在第一次Hibernate调用时某些请求失败“org.hibernate.HibernateException:当前事务未在进行中”。这会影响服务器重启之前的随机请求我无法重现这一点,并且当前正在“反应”它(到目前为止仅在测试环境中。

当JBoss事务超时命中并且服务器代码继续Hibernate调用时,我设法触发了相同的行为,但是从来没有前面的Arjuna协调器日志中止操作,并且从未在后续调用中重新出现。

脱离我的头脑我怀疑线程“状态”以某种方式保留在先前的调用中,并且当该线程随后被重新用于另一个请求时,它导致没有事务被启动。我对Hibernate的工作知识不多,但是当事务和会话工作不正常时,这就是我想出来的。

你能给我一些关于我应该研究的调查和/或配置的指示吗?

1 个答案:

答案 0 :(得分:1)

这实际上是一个Hibernate错误,在某些条件下会留下会话!升级到Hibernate 3.3解决了这个问题。