Re: Allow GUC settings in CREATE SUBSCRIPTION CONNECTION to take effect
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Fujii Masao <masao.fujii@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-12-23T05:05:32Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add TAP test for GUC settings passed via CONNECTION in logical replication.
- ec8d91c7e78c 15.16 landed
- 67edd54f0639 16.12 landed
- 358784645eb8 17.8 landed
- 6ec596815125 18.2 landed
- 5f13999aa11d 19 (unreleased) landed
-
Honor GUC settings specified in CREATE SUBSCRIPTION CONNECTION.
- f7eb44e0f087 15.16 landed
- 75f3428f2436 16.12 landed
- 7a990e801a72 17.8 landed
- 797fc5d1b38d 18.2 landed
- d926462d8190 19 (unreleased) landed
-
Ensure consistent logical replication of datetime and float8 values.
- f3d4019da5d0 15.0 cited
On Fri, Dec 19, 2025 at 1:25 PM Fujii Masao <masao.fujii@gmail.com> wrote: > > On Wed, Dec 3, 2025 at 2:45 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > > > On Tue, Dec 2, 2025 at 8:30 PM Fujii Masao <masao.fujii@gmail.com> wrote: > > > > > > On Tue, Dec 2, 2025 at 9:08 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > > > Is it possible that we append the predefined options to the options > > > > given by the user to avoid extra round-trip? > > > > > > One idea is to add a function, similar to libpqrcv_get_dbname_from_conninfo() > > > in libpqwalreceiver.c, that extracts the options string from the conninfo, > > > to append the required fixed settings, and then to use the combined string as > > > the value of the options parameter. > > > > > > > Yes, but libpqrcv_get_dbname_from_conninfo() is an exposed function, > > we can implement something internal for libpqwalreceiver.c like > > conninfo_add_defaults() present in fe-connect.c. > > > > > Do you think implementing this is worthwhile > > > to avoid the extra round trip? > > > > > > > I think so. Today, we have three variables, tomorrow there could be > > more such variables as well and apart from avoiding extra round trips, > > the idea to append options to provided options (if any) sounds more > > logical to me. > > OK, I've implemented the idea discussed upthread. The patch updates > libpqrcv_connect() so that, for logical replication, it extracts the options > string from the conninfo, appends the required fixed settings, and passes > the combined string as the options parameter to libpq. > > For example, if the conninfo specifies -c wal_sender_timeout=10s, > the resulting options value becomes: > > -c wal_sender_timeout=10s -c datestyle=ISO -c > intervalstyle=postgres -c extra_float_digits=3. > > Patch attached. > Thanks, the idea looks good now. One minor comment: } + /* This appears to be an unnecessary addition in the patch. -- With Regards, Amit Kapila.