首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以从单个线程抛出StaleStateObjectException吗?

可以从单个线程抛出StaleStateObjectException吗?
EN

Stack Overflow用户
提问于 2013-10-01 17:46:56
回答 1查看 123关注 0票数 0

我们使用的是Grails和Hibernate。我们的日志中有一个org.hibernate.StaleObjectStateException。我看到这可能是由于乐观锁失败造成的。很好。但是,我希望确保同一线程的多个更新永远不会发生这种情况。我的意思是永远不会。是否存在对同一hibernate实体的多个更新,但都来自同一线程,从而导致此异常的情况?

谢谢,

EN

回答 1

Stack Overflow用户

发布于 2013-10-01 17:56:14

我没有尝试,但我预计以下代码会出现以下错误:

代码语言:javascript
复制
 Foo foo1 = session.get(Foo.class, 1);
 Foo foo2 = session.get(Foo.class, 1); // same ID

 foo1.setBar(1);
 foo2.setBar(2);

 session.saveOrUpdate(foo1);
 session.saveOrUpdate(foo2); // Should throw an error

例如,当您具有在相同实体上工作的复杂辅助对象时,可能会发生这种情况。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19113015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档