Report replica identity in pg_publication_tables

Поиск
Список
Период
Сортировка
От Ashutosh Bapat
Тема Report replica identity in pg_publication_tables
Дата
Msg-id CAExHW5sSmbnFCiMX=smSQSdaxkWPvZbMYaZq2bSE7+SD5wSWOA@mail.gmail.com
обсуждение исходный текст
Ответы Re: Report replica identity in pg_publication_tables
Список pgsql-hackers
Hi All,

The commit message in the patch says it all, but let me repeat it here.

When debugging issues with logical replication, replica identity
property of tables in publication is often useful, for example, to
determine the amount of data logged for an UPDATE or DELETE on a given
table.

Given a set of publications that a WAL sender is using,
pg_publication_tables can be used to get the list of tables whose
changes will be replicated including the columns of those tables and
row
filters. But the replica identity of those tables needs to be
separately found out by querying pg_class or joining pg_class with
pg_publication_tables on schemaname and relname. Adding the replica
identity column to pg_publication_tables avoids this extra step.

The replica identity of a given table is not a property of
publication, per say, so it's arguable whether it should be included
in pg_publication_tables or not. But the output seems to be useful.
E.g. from the tests

SELECT * FROM pg_publication_tables WHERE pubname = 'testpub6';
 pubname  | schemaname |      tablename      | attnames | rowfilter |
replica_identity
----------+------------+---------------------+----------+-----------+------------------
 testpub6 | public     | rf_tbl_abcd_part_pk | {a,b}    | (b > 99)  | default
(1 row)

This line gives all the information related to logical replication of
table rf_tbl_abcd_part_pk together.

-- 
Best Wishes,
Ashutosh Bapat



В списке pgsql-hackers по дате отправления: