Re: BUG #17756: Invalid replica indentity set order in a dump
Sergey Belyashov <sergey.belyashov@gmail.com>
From: Sergey Belyashov <sergey.belyashov@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2023-01-20T17:45:57Z
Lists: pgsql-bugs
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow REPLICA IDENTITY to be set on an index that's not (yet) valid.
- a5f3f2fce1e9 12.14 landed
- 6c122eddecc1 11.19 landed
- c9f7f926484d 16.0 landed
- 9e4288ce6d30 15.2 landed
- 72d611109e65 13.10 landed
- 70ec756b01a4 14.7 landed
SQL: create database testdb; \c testdb create table tbl (id integer not null primary key) partition by list (id); create table tbl_1 partition of tbl for values in (1); alter table tbl replica identity using index tbl_pkey; Next do: $ pg_dump testdb >testdb.sql $ psql testdb -c "drop table tbl" $ psql testdb <testdb.sql result: ... ALTER TABLE ERROR: cannot use invalid index "tbl_pkey" as replica identity ... Reproduced in Postgresql 15.1 too. Sergey Belyashov пт, 20 янв. 2023 г. в 18:42, Tom Lane <tgl@sss.pgh.pa.us>: > > PG Bug reporting form <noreply@postgresql.org> writes: > > Some database have a partitioned table with unique index used as REPLICA > > IDENTITY. pg_dump places ALTER TABLE tbl REPLICA IDENTITY USING INDEX > > some_idx after partial index creation. But Postgresql fails to restore such > > dump because replica identity cannot be set on invalid index some_idx: > > partition indices are not created. > > Please provide a concrete example, preferably a SQL script to create > a database that triggers the problem. There are enough variables > here that nobody is likely to be excited about trying to reverse- > engineer a test case from only this amount of detail. > > regards, tom lane