Задать вопрос
@BugorSA

В чем может быть причина сброса значения sequence в БД?

В spring приложении использую аннотацию @SequenceGenerator и соответствующую структуру в postgresql для генерации id. В какой-то момент начали появляться сущности с уже созданными ранее id (старые записи уходят в другую таблицу), а значение sequence стало подозрительно низким, из чего сделан вывод что он был обнулен. Руками в базу никто не лез и скриптов на обнуление тоже ни в каком виде в приложении нет. До предела тоже дойти не могло, там bigint. Единственное, есть миграционные скрипты на увеличение шага sequence, но как показал эксперимент он не влияет на текущее значение. Подскажите, в чем может быть причина такого поведения?
  • Вопрос задан
  • 62 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
@rPman
Варианты причин
- неудачное восстановление из бакапа (скрипт отработал до установки сиквенса до низкого значения)
- проблема с репликой master-slave
- повреждена сама база данных

Посмотри, может у тебя было включено логирование ddl в postgresql.conf log_statement = 'ddl'.
А дальше искать в /var/log/postgresql/*.log по имени сиквенса
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы