hibernate-entitymanager
Springアプリケーションで使用しています。Hibernate のバージョンをアップグレード中です。正確なバージョンに絞り込みました: 4.2.1.Final から 4.2.2.Final (またはそれ以上) にアップグレードすると、単体テストを開始してデータベースを作成しようとすると、次のエラーが発生します。スキーマ:
2014-03-02 18:02:51,559 ERROR [SchemaExport] [main] HHH000389: Unsuccessful: alter table Incident add constraint FK_d91dua6gkdp1jn826adqss3aq foreign key (uuid) references Incident
2014-03-02 18:02:51,559 ERROR [SchemaExport] [main] Constraint "FK_D91DUA6GKDP1JN826ADQSS3AQ" already exists; SQL statement:
alter table Incident
add constraint FK_d91dua6gkdp1jn826adqss3aq
foreign key (uuid)
references Incident [90045-170]
このエラーはシステムの正常な動作を妨げるものではありませんが、システムにそのような厄介なエラーがあり、その説明がないため、明らかに本番環境に移行できません。
これは、テーブルがそれ自体に対して外部キー関係を持っているように見えIncident
ますが、まったくそうではありません。
ここでエンティティの本質をコピーしてみます。Incident
@Entity
@Audited
@EntityListeners(value = {IncidentIdentifierPrePersistListener.class })
@FilterDefs( ... )
@Filters( ... )
public class Incident extends SomeBaseClass {
@Id
private String uuid = UUID.randomUUID().toString();
@Column(nullable = false, unique = true)
private long identifier;
... a bunch more fields ...
}
これに光を当てるために皆さんを助けるために他に何か提供できることがあれば教えてください. 私はそれを何時間もいじりましたが、実りがありませんでした。あなたの助けをいただければ幸いです。