我相信由于事务嵌套,我收到了 JDO 提交异常,尽管我不确定。
这是否会检测到我正在启动一个事务而另一个事务处于待处理状态的情况?
PersistenceManager pm = PersistenceManagerFactory.get().getPersistenceManager();
assert pm.currentTransaction().isActive() == false : "arrrgh";
pm.currentTransaction().begin();
有更好或更可靠的方法吗?
最佳答案
由 Ikai Lan (Google) 提供
您无法检测交易是否处于 Activity 状态。原因是数据存储实体组不是悲观锁定:它们是乐观锁定。也就是说,检查应用程序是否操作过时数据是在写入时检查,而不是在数据读取时检查。
关于java - 如何检测待处理的 JDO 事务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2968945/