純粋な JPA アノテーションを使用して、いくつかの Hibernate エンティティを定義しました。これらは、データベースで事前定義された Oracle シーケンスを使用して、主キー値を自動的に生成します。
@Id
@SequenceGenerator(name = "USERS_ID_GENERATOR", sequenceName = "MY_SEQ")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USERS_ID_GENERATOR")
@Column(name = "U_ID", updatable = false, unique = true, nullable = false, precision = 19)
private Long id;
これを JBoss EAP 6.1 にデプロイすると、最初はすべて正常に動作しますが、しばらくすると Hibernate が挿入時に重複キーを生成し始めます (ORA-00001 エラー)。
ID の順序やギャップは気にしませんが、キーの重複は許容できません... ここで何が起こっているのでしょうか?