Я использую спящий режим с JBoss 4.2.3 и все работает, теперь я мигрировал код для Jboss 7.1.1 и вдруг я начинаю получать:Hibernate бросает ошибку нарушения PK
Caused by: org.hibernate.exception.ConstraintViolationException: ORA-00001: unique constraint (OBLICORE.PK_ACE_WORKERS_QUEUE_STATS_ID) violated
Также генерируемое Идентификаторы являются отрицательными.
Лицо, которое не определяется как таковой:
@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;
Я проверил последовательность в Oracle и, кажется, в порядке (Как я уже сказал, он работал раньше с JBoss 4.2 и ничего не изменилось на стороне БД, так как миграция).
Я пробовал записывать журналы запросов Hibernate, но не смог найти этот запрос, и я также зарегистрировал конкретный вызов, который сохраняется в этом классе, и увидел, что он вызван только один раз.
Огромное спасибо, я так долго ударил головой об этом. – Tomer
allocSize = 1 не работает для меня, но strategy = "sequence" работает как шарм – Hamedz