Мы столкнулись с проблемой, когда у нас есть подклассы Event, использующие GenerationType.TABLE для генерации первичного ключа, и при перезапуске серверов мы получаем дублированные ошибки первичного ключа.
Мы используем SQL Server и Hibernate версии 3.5.1-Final.
Вот как выглядят наши аннотации Hibernate:
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class Event {
@Id
@GeneratedValue(strategy = GenerationType.TABLE)
private long eventID;
мы не указываем allocSize, поэтому используем значение по умолчанию. Таблица последовательностей гибернации увеличивается, но, похоже, при перезапуске она повторно использует уже использованные идентификаторы.