После обновления JDK с 11 до 21 и Hibernate Envers до 6.4.4.Final я столкнулся со следующей ошибкой при сохранении данных в таблице аудита:
org.springframework.dao. DataIntegrityViolationException: не удалось выполнить инструкцию [ОШИБКА: повторяющееся значение ключа нарушает уникальное ограничение "revinfo_pkey"
Я использую @Audited и @EntityListeners(AuditingEntityListener.class) для создания таблиц аудита. У меня уже есть несколько таблиц аудита и таблица rev_info с существующими записями. Ошибка возникает из-за того, что процесс вставки не добавляется в конец таблицы revinfo, а начинается с начала, что приводит к периодическим нарушениям дублирования ключей. В идеале вставка должна начаться после последней записи.
Как решить эту проблему?
Я попытался выполнить дальнейшие обновления, чтобы решить эту проблему, но проблема сохраняется. Я предпочитаю не очищать все таблицы аудита, поскольку они содержат столбцы rev, которые являются внешними ключами, ссылающимися на таблицу revinfo.
Моя цель — восстановить предыдущее поведение, при котором новые записи в таблице revinfo следовать последней существующей записи, не вызывая дублирования ключей.
Подробнее здесь: https://stackoverflow.com/questions/785 ... uring-audi
Ошибка: повторяющееся значение ключа нарушает уникальное ограничение «revinfo_pkey» во время вставки таблицы аудита посл ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение