Command order bug in pg_dump
От | Kirill Reshke |
---|---|
Тема | Command order bug in pg_dump |
Дата | |
Msg-id | CALdSSPhGitjpTfzEMJN-Y2x+Q-5QChSxAsmSJ1-E8mQJLkHOqQ@mail.gmail.com обсуждение исходный текст |
Ответы |
Re: Command order bug in pg_dump
|
Список | pgsql-bugs |
tested against 706cbed351037fb5e886815506515d1281e62d40 Execute this in first db (say, db1): ``` create table tfk (i int unique) partition by range (i ); create table tfk_po partition of tfk for values from ( 0 ) to (1); create table tt (i int) partition by range (i ); create table tt_po partition of tt for values from ( 0 ) to (1); ALTER TABLE public.tt ADD CONSTRAINT tt_i_fkey FOREIGN KEY (i) REFERENCES public.tfk(i); ALTER TABLE public.tt ADD CONSTRAINT tt_a_fkey FOREIGN KEY (i) REFERENCES public.tfk(i); ``` create new database and dump-restore ./pgbin/bin/pg_dump -d db1 --schema-only > dump-p.sql ./pgbin/bin/createdb db2 restore fails db2=# \i dump-p.sql SET SET SET SET SET SET set_config ------------ (1 row) SET SET SET SET SET CREATE TABLE ALTER TABLE SET CREATE TABLE ALTER TABLE CREATE TABLE ALTER TABLE CREATE TABLE ALTER TABLE ALTER TABLE ALTER TABLE ALTER TABLE ALTER TABLE ALTER INDEX ALTER TABLE psql:dump-p.sql:120: ERROR: constraint "tt_i_fkey" for relation "tt" already exists db2=# This bug is about now postgresql chooses generated name for inherited contains I think this is a problem, when pg_dump creates sql which is non-applicable for restore. Bug discovered when digging out pg_upgarde failure reasons. -- Best regards, Kirill Reshke
В списке pgsql-bugs по дате отправления: