我一直在使用与JBoss 4.2.3休眠和一切工作,现在我迁移代码到JBoss 7.1.1,突然我开始越来越:休眠抛出PK冲突错误
Caused by: org.hibernate.exception.ConstraintViolationException: ORA-00001: unique constraint (OBLICORE.PK_ACE_WORKERS_QUEUE_STATS_ID) violated
而且生成的ID是负面的。
失败的定义是这样的实体:
@Id
@SequenceGenerator(name = "SEQ_ACE_WORKERS_QUEUE_STATS_ID", sequenceName = "SEQ_ACE_WORKERS_QUEUE_STATS_ID", allocationSize = 500)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_ACE_WORKERS_QUEUE_STATS_ID")
@Column(name = "ID")
private long Id;
我在甲骨文检查顺序,似乎OK(就像我说的,它与JBoss 4.2前工作,因为在DB端没有什么改变移民)。
我试着编写Hibernate查询日志,但找不到该查询,并且我还记录了持续这个类的特定调用,并且看到它只调用一次。
非常感谢你,我长久以来一直对此感到震惊。 – Tomer 2012-03-27 14:04:47
allocationSize = 1对我来说不起作用,但是strategy =“sequence”就像一个魅力 – Hamedz 2016-11-10 20:28:48