Re: [17] CREATE SUBSCRIPTION ... SERVER

Joe Conway <mail@joeconway.com>

From: Joe Conway <mail@joeconway.com>
To: Jeff Davis <pgsql@j-davis.com>, Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>
Cc: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, pgsql-hackers@postgresql.org
Date: 2024-01-15T20:53:04Z
Lists: pgsql-hackers
On 1/12/24 20:17, Jeff Davis wrote:
> On Fri, 2024-01-05 at 16:11 +0530, Ashutosh Bapat wrote:
>> I don't think we need to add a test for every FDW. E.g. adding a test
>> in file_fdw would be pointless. But postgres_fdw is special. The test
>> could further create a foreign table ftab_foo on subscriber
>> referencing foo on publisher and then compare the data from foo and
>> ftab_foo to make sure that the replication is happening. This will
>> serve as a good starting point for replicated tables setup in a
>> sharded cluster.
>> 
> 
> Attached updated patch set with added TAP test for postgres_fdw, which
> uses a postgres_fdw server as the source for subscription connection
> information.
> 
> I think 0004 needs a bit more work, so I'm leaving it off for now, but
> I'll bring it back in the next patch set.

I took a quick scan through the patch. The only thing that jumped out at 
me was that it seems like it might make sense to use 
quote_literal_cstr() rather than defining your own appendEscapedValue() 
function?

-- 
Joe Conway
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com




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.