|
I have got a problem with inheritance and the index name generation. As example: Multiple abstract classes, which are inherited from each other.
@Entity
public abstract class LongClassName1 implements Serializable {
...
@Index(name = "externalIdIndex")
String externalId;
...
}
@Entity
public abstract class LongClassName2 extends LongClassName1 { ... }
@Entity
public abstract class LongClassName3 extends LongClassName2 { ... }
@Entity
public abstract class LongClassName4 extends LongClassName3 { ... }
@Entity
public class LongClassName5 { ... }
Now Hibernate generates an Index like LongClassName5LongClassName4LongClassname3LongClassname2externalIdIndex which leads to an error message like Identifier name 'LongClassName5LongClassName4LongClassname3LongClassname2externalIdIndex' is too long, as MySQL only allows 64 characters.
I've tried multiple hibernate naming strategies and also have overwritten the methods myself, but nothing has worked so far.
|