@GeneratedValue со стратегией = GenerationType.AUTO генерирует повторное значение после перезапуска
У меня есть спящий объект с идентификатором, настроенным как
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
Создание новых элементов работает нормально в первом запуске. Но если я перезапущу свое приложение и получу обратно записи, в следующий раз, когда я попытаюсь сохранить эту сущность, hibernate попытается использовать тот же идентификатор, сгенерированный, когда приложение не было перезапущено.
Я получаю сообщение об ошибке ниже, и при запуске с параметром трассировки, я смог увидеть, что идентификатор использовался повторно
*Hibernate: insert into org_myEntity (entitiyJID, entitityName, id) values (?, ?, ?) org.hibernate.util.JDBCExceptionReporter
SQL Error: 20000, SQLState: 23505
org.hibernate.util.JDBCExceptionReporter The
statement was aborted because it would have caused a duplicate key
value in a unique or primary key constraint or unique index identified
by 'SQL120725164357680' defined on 'TABLE_NAME'.
org.hibernate.event.def.AbstractFlushingEventListener
Could not synchronize database state with session
org.hibernate.exception.ConstraintViolationException: could not*
Кстати, я использую hibernate 3.3.2.GA, javax.persistance 2.0.0 и базу данных Derby 10.5.1
Кто-нибудь знает, что может быть не так в моем поколении и как я могу это исправить?