如何修复HSQL DataSource + TxM,其中identity始终返回0

时间:2011-02-01 00:32:40

标签: java hibernate transactions hsqldb jta

我正在使用Hibernate来做我的ORM东西和HSQL进行测试。似乎提取连接以执行插入然后返回。在HIbernate获得连接之后直接尝试从HSQL获取标识,但是返回0,这显然是错误的。

当我使用简单的池连接运行tm和数据源时,一切正常但是使用新的tm + ds我遇到了这个问题。

1 个答案:

答案 0 :(得分:0)

答案是DataSource应该知道tx,因此每个新tx的连接都是粘性的。最初的问题是使用不同的连接来获取新行的标识,这当然导致返回0。如果连接对于初始插入和呼叫标识仍然是粘性的,则一切正常。