Задать вопрос
n_elloco
@n_elloco
Python/Django developer

Как решить проблему при копировании таблицы в PostgreSQL?

Имеется БД, каждый день снимается резервная копия. Но в последнее время возникают ошибки при разворачивании копии. Стали возникать ошибки задублированности данных в дампе, хотя на оригинале дублей не обнаружено. Став копать глубже, выяснил, что при запуске pg_dump вызывается команда COPY. В итоге получил интересную картину

# copy my_table (id, filter_state_id, analytic_pack, view_type, detail_type, top, 
       params_json, code, name) to '/tmp/copy.txt';
$ cat /tmp/copy.txt | grep 43727
43727   4425    AnyData     1       1       7                       AnyName
43727   4425    AnyData     1       1       7                       AnyName

# select * from my_table where id=43727;
  id   | filter_state_id | analytic_pack | view_type | detail_type | top | params_json | code |     name     
-------+-----------------+---------------+-----------+-------------+-----+-------------+------+--------------
 43727 |            4425 | AnyData   |         1 |           1 |   7 |             |      | AnyName
(1 row)


Версия PostgreSQL: 9.4

Собственно вопрос: как такое может быть, откуда команда COPY может брать дубликат записи.
Проверял на другой таблице, где есть версионность данных, там оказалось что под одним Id находятся одинаковые записи но разной версии.
  • Вопрос задан
  • 215 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Hi-TECH Academy
    Администрирование PostgreSQL 16. Базовый курс
    3 дня
    Далее
  • OTUS
    PostgreSQL. Advanced
    4 месяца
    Далее
  • Учебный центр IBS
    QPT PostgreSQL 16. Оптимизация запросов
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 1
у COPY есть параметр OIDS
попробовать с ним руками сдампить/восстановить
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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