Re: [19] CREATE SUBSCRIPTION ... SERVER

Jeff Davis <pgsql@j-davis.com>

From: Jeff Davis <pgsql@j-davis.com>
To: Amit Kapila <amit.kapila16@gmail.com>, Álvaro Herrera <alvherre@kurilemu.de>
Cc: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, Shlok Kyal <shlok.kyal.oss@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, Joe Conway <mail@joeconway.com>, "L. pgsql-hackers" <pgsql-hackers@postgresql.org>
Date: 2026-03-24T22:47:47Z
Lists: pgsql-hackers
On Sat, 2026-03-21 at 16:25 +0530, Amit Kapila wrote:
> > > Maybe another possibility would be to use a separate memory
> > > context
> > > for each subscription, initially making it a child of the
> > > transaction
> > > context, and then reparenting it as appropriate.
> > 
> > I mean something like this on top of your 0003.
> > 
> 
> +1. This approach and patch looks like a better way to deal with this
> issue.

Thank you, pushed.

A couple minor adjustments: in GetSubscription(), I create the context
after the early return, in case the subscription isn't found. Also, I
combined the:

   if (newsub)
      ...

   if (!newsub)
      ...

into if/else.

The only remaining issue in this thread is how to make
test_fdw_connect() available during the pg_dump tests without polluting
pg_proc. Is there a reasonable way to do that?

Regards,
	Jeff Davis





Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Document new catalog columns, missed in commit 8185bb5347.

  2. Refactor to remove ForeignServerName().

  3. GetSubscription(): use per-object memory context.

  4. Fix dependency on FDW's connection function.

  5. ALTER SUBSCRIPTION ... SERVER test.

  6. Fix pg_dump for CREATE FOREIGN DATA WRAPPER ... CONNECTION.

  7. Clean up postgres_fdw/t/010_subscription.pl.

  8. CREATE SUBSCRIPTION ... SERVER.

  9. Allow upgrades to preserve the full subscription's state.