Re: Minimal logical decoding on standbys
Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Reduce the log level in 035_standby_logical_decoding.pl.
- 3034dc56ef4b 16.0 landed
-
035_standby_logical_decoding: Add missing waits for replication
- 57411c82ce86 16.0 landed
-
For cascading replication, wake physical and logical walsenders separately
- e101dfac3a53 16.0 landed
-
Handle logical slot conflicts on standby
- 26669757b6a7 16.0 landed
-
Support invalidating replication slots due to horizon and wal_level
- be87200efd93 16.0 landed
-
Prevent use of invalidated logical slot in CreateDecodingContext()
- 4397abd0a2af 16.0 landed
-
Replace replication slot's invalidated_at LSN with an enum
- 15f8203a5975 16.0 landed
-
Pass down table relation into more index relation functions
- 61b313e47eb9 16.0 landed
-
Assert only valid flag bits are passed to visibilitymap_set()
- a88a18b1250b 16.0 landed
-
Remove unused _bt_delitems_delete() argument.
- dc43492e46c7 14.0 cited
-
Add xl_btree_delete optimization.
- d2e5e20e5711 13.0 cited
Attachments
- v48-0006-Doc-changes-describing-details-about-logical-dec.patch (text/plain) patch v48-0006
- v48-0005-New-TAP-test-for-logical-decoding-on-standby.patch (text/plain) patch v48-0005
- v48-0004-Fixing-Walsender-corner-case-with-logical-decodi.patch (text/plain) patch v48-0004
- v48-0003-Allow-logical-decoding-on-standby.patch (text/plain) patch v48-0003
- v48-0002-Handle-logical-slot-conflicts-on-standby.patch (text/plain) patch v48-0002
- v48-0001-Add-info-in-WAL-records-in-preparation-for-logic.patch (text/plain) patch v48-0001
Hi, On 1/11/23 4:23 PM, Drouvot, Bertrand wrote: > Hi, > > On 1/11/23 8:32 AM, Bharath Rupireddy wrote: >> On Tue, Jan 10, 2023 at 2:03 PM Drouvot, Bertrand >> <bertranddrouvot.pg@gmail.com> wrote: >>> >>> Please find attached, V37 taking care of: >> >> Thanks. I started to digest the design specified in the commit message >> and these patches. > > Thanks for looking at it! > >> Here are some quick comments: >> >> 1. Does logical decoding on standby work without any issues if the >> standby is set for cascading replication? >> > > Without "any issues" is hard to guarantee ;-) But according to my tests: > > Primary -> Standby1 with or without logical replication slot -> Standby2 with or without logical replication slot > > works as expected (and also with cascading promotion). > We can add some TAP tests in 0004 though. Cascading standby tests have been added in V48 attached. It does test that: - a sql logical decoding session on the cascading standby get expected output before/after the standby promotion - a pg_recvlogical logical decoding session on the cascading standby (started before the standby promotion) get expected output before/after the standby promotion Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com