Bitronix交易似乎过早提交

时间:2017-09-02 04:29:54

标签: spring-batch jta bitronix

我们有一个使用bitronix事务管理器的spring-batch进程。在特定步骤的第一次传递中,我们看到了预期的提交行为 - 数据仅在达到事务边界时提交到目标数据库。

但是,在第二次和后续传递中,一旦写入行就会提交。也就是说,他们不会等待提交点。

我们已经确认只在预期的点调用bitronix提交。

之前有没有人经历过这种行为?我在寻找什么样的虫子?

1 个答案:

答案 0 :(得分:0)

Java XA的设计使得连接不能跨事务重用。提交事务后,连接属性将更改为autocommit = true,并且连接不能在另一个事务中使用,直到它返回到连接池并再次由XA代码检索。