En mi experiencia, es habitual que hibernate cree una clave externa y un índice en el campo FK con cada nombre diferente. No puedo entender por qué hibernate genera el mismo nombre de forma extraña.
Puede usar @ForeignKey(name="")
, @Index
o @IndexColumn
para cambiar la clave externa o el nombre del índice. Eso evitará este problema.
Pero parece que tiene un error
con @OneToOne