Re: Minimal logical decoding on standbys
Noah Misch <noah@leadboat.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
On Tue, Apr 11, 2023 at 01:10:57PM -0700, Andres Freund wrote: > On 2023-04-11 11:04:50 +0200, Drouvot, Bertrand wrote: > > On 4/11/23 10:55 AM, Drouvot, Bertrand wrote: > > > I think we might want to add: > > > > > > $node_primary->wait_for_replay_catchup($node_standby); > > > > > > before calling the slot creation. > Pushed. Seems like a clear race in the test, so I didn't think it was worth > waiting for testing it on hoverfly. We'll see what happens in the next run. > I think we should lower the log level, but perhaps wait for a few more cycles > in case there are random failures? Fine with me. > I wonder if we should make the connections in poll_query_until to reduce > verbosity - it's pretty annoying how much that can bloat the log. Perhaps also > introduce some backoff? It's really annoying to have to trawl through all > those logs when there's a problem. Agreed. My ranked wish list for poll_query_until is: 1. Exponential backoff 2. Closed-loop time control via Time::HiRes or similar, instead of assuming that ten loops complete in ~1s. I've seen the loop take 3x as long as the intended timeout. 3. Connect less often than today's once per probe