我无法找到完全解释从数据存储中删除的实体(我正在使用 JDO deletePersistent)的文档,而无需进行事务处理。当为了性能和避免争用而不使用事务时,我可以承受在并行更新期间失去数据准确性。
但是我如何确保当我的代码同时在不同的机器上运行时,删除操作不会被稍后的更新覆盖/在另一台机器上对该实体进行先前的读取,我让 PersistenceManager 照顾对附加对象的隐式更新。
编辑:尝试在 deletePersistent 之后更新该实体将导致异常,但那是在尝试更新传递给 deletePersistent 的完全相同的副本时。但如果它是另一台机器上的不同副本,将被视为更新已删除实体(无效)或插入或更新导致将该实体放回?