[COMMITTERS] pgsql: Tweak publication fetching in psql - Mailing list pgsql-committers

From Peter Eisentraut
Subject [COMMITTERS] pgsql: Tweak publication fetching in psql
Date
Msg-id E1dNM8a-0001Dd-MB@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Tweak publication fetching in psql

Viewing a table with \d in psql also shows the publications at table is
in.  If a publication is concurrently dropped, this shows an error,
because the view pg_publication_tables internally uses
pg_get_publication_tables(), which uses a catalog snapshot.  This can be
particularly annoying if a for-all-tables publication is concurrently
dropped.

To avoid that, write the query in psql differently.  Expose the function
pg_relation_is_publishable() to SQL and write the query using that.
That still has a risk of being affected by concurrent catalog changes,
but in this case it would be a table drop that causes problems, and then
the psql \d command wouldn't be interesting anymore anyway.

Reported-by: Tom Lane <tgl@sss.pgh.pa.us>

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a2141c42f9ebc51b4501a4fafea9dd3fb7eda23d

Modified Files
--------------
src/backend/catalog/pg_publication.c | 24 ++++++++++++++++++++++++
src/bin/psql/describe.c              | 14 +++++++++-----
src/include/catalog/catversion.h     |  2 +-
src/include/catalog/pg_proc.h        |  2 ++
4 files changed, 36 insertions(+), 6 deletions(-)


pgsql-committers by date:

Previous
From: Bruce Momjian
Date:
Subject: [COMMITTERS] pgsql: doc: adjust wal_level pg_upgrade patch
Next
From: Tom Lane
Date:
Subject: [COMMITTERS] pgsql: Don't downcase entries within shared_preload_libraries et al.