Задать вопрос
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 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Учебный центр IBS
    QPT PostgreSQL 16. Оптимизация запросов
    1 неделя
    Далее
  • Skillfactory
    Профессия C++ разработчик
    11 месяцев
    Далее
  • Нетология
    Python-разработчик с нуля
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
у COPY есть параметр OIDS
попробовать с ним руками сдампить/восстановить
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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