Nelle mie esperienze, è normale che l'ibernazione crei una chiave esterna e un indice sul campo FK con un nome diverso. Non riesco a capire perché l'ibernazione genera lo stesso nome in modo strano.
Puoi usare @ForeignKey(name="")
, @Index
o @IndexColumn
per cambiare la chiave esterna o il nome dell'indice. Ciò eviterà questo problema.
Ma sembra che abbia un bug
con @OneToOne