From: Michael Paquier <michael@paquier.xyz>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Rework some code handling pg_subscription data in psql and pg_du
Date: Tue, 03 Dec 2024 00:49:09 +0000
Message-ID: <E1tIH6D-000pNc-8m@gemulon.postgresql.org> (raw)
Rework some code handling pg_subscription data in psql and pg_dump
This commit fixes some inconsistencies found in the frontend code when
dealing with subscription catalog data.
The following changes are done:
- pg_subscription.h gains a EXPOSE_TO_CLIENT_CODE, so as more content
defined in pg_subscription.h becomes available in pg_subscription_d.h
for the frontend.
- In psql's describe.c, substream can be switched to use CppAsString2()
with its three LOGICALREP_STREAM_* values, with pg_subscription_d.h
included.
- pg_dump.c included pg_subscription.h, which is a header that should
only be used in the backend code. The code is updated to use
pg_subscription_d.h instead.
- pg_dump stored all the data from pg_subscription in SubscriptionInfo
with only strings, and a good chunk of them are boolean and char values.
Using strings is not necessary, complicates the code (see for example
two_phase_disabled[] removed here), and is inconsistent with the way
other catalogs' data is handled. The fields of SubscriptionInfo are
reordered to match with the order in its catalog, while on it.
Reviewed-by: Hayato Kuroda
Discussion: https://postgr.es/m/Z0lB2kp0ksHgmVuk@paquier.xyz
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/08691ea958c2646b6aadefff878539eb0b860bb0
Modified Files
--------------
src/bin/pg_dump/pg_dump.c | 47 ++++++++++++++++-------------------
src/bin/pg_dump/pg_dump.h | 16 ++++++------
src/bin/psql/describe.c | 7 +++---
src/include/catalog/pg_subscription.h | 44 +++++++++++++++++---------------
4 files changed, 58 insertions(+), 56 deletions(-)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-committers@postgresql.org
Cc: michael@paquier.xyz, pgsql-committers@lists.postgresql.org
Subject: Re: pgsql: Rework some code handling pg_subscription data in psql and pg_du
In-Reply-To: <E1tIH6D-000pNc-8m@gemulon.postgresql.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox