pg_dump --if-exists --clean when drop index that is partition of a partitioned index
От | jian he |
---|---|
Тема | pg_dump --if-exists --clean when drop index that is partition of a partitioned index |
Дата | |
Msg-id | CACJufxF0QSdkjFKF4di-JGWN6CSdQYEAhGPmQJJCdkSZtd=oLg@mail.gmail.com обсуждение исходный текст |
Ответы |
Re: pg_dump --if-exists --clean when drop index that is partition of a partitioned index
|
Список | pgsql-hackers |
hi. CREATE TABLE tp(c int, a int, b int) PARTITION BY RANGE (b); CREATE TABLE tp_1(c int, a int, b int); ALTER TABLE tp ATTACH PARTITION tp_1 FOR VALUES FROM (0) TO (1); CREATE INDEX t_a_idx ON tp_1(a); CREATE INDEX tp_a_idx ON tp(a); pg_dump --schema=public --if-exists --clean --no-statistics --no-owner --no-data --table-and-children=tp > 1.sql pg_dump output file 1.sql excerpts: ---- DROP INDEX IF EXISTS public.t_a_idx; DROP INDEX IF EXISTS public.tp_a_idx; DROP TABLE IF EXISTS public.tp_1; DROP TABLE IF EXISTS public.tp; ---- if you execute the DROP INDEX IF EXISTS public.t_a_idx; ERROR: cannot drop index t_a_idx because index tp_a_idx requires it HINT: You can drop index tp_a_idx instead. Is this pg_dump output what we expected? SELECT * FROM pg_partition_tree('tp_a_idx'); relid | parentrelid | isleaf | level ----------+-------------+--------+------- tp_a_idx | | f | 0 t_a_idx | tp_a_idx | t | 1 (2 rows)
В списке pgsql-hackers по дате отправления: