As an oracle dba new to Postgres, I’m used to the concept of context switches and latch issues with regards to transaction log switches. Does Postgres have a similar mechanism with latching etc when it switches to a new wal segment that is alleviated when increasing the size of the wal segments?
Regards Andrew Sent from my iPhone > On 17 Dec 2025, at 18:58, Laurenz Albe <[email protected]> wrote: > > On Wed, 2025-12-17 at 12:21 -0500, Greg Sabino Mullane wrote: >>> On Wed, Dec 17, 2025 at 11:10 AM Colin 't Hart <[email protected]> wrote: >>> Thanks Laurenz, that confirms what I was assuming. Archiving is via >>> pgbackrest >>> to a backup server, over SSH. Approx 750ms to archive each segment is crazy >>> -- >>> I'll check compression parameters too. >> >> Switch to archive-async = on. When doing that, the typical time drops to >> 10ms or less. >> Also use a compress-type of lz4 or zst, which perform way better than the >> default gz. >> If you are encrypting, that's a bottleneck you just have to deal with, no >> shortcuts there. :) > > I second that. Asynchronous archiving in pgBackRest tends to work around the > problem. > >> tl;dr try other things before messing with the WAL size. The current size >> can work very >> well even on very large and very, very busy systems. > > On the other hand, 16MB on a very busy system is somewhat ridiculous. > A somewhat bigger segment size may be appropriate. > > Yours, > Laurenz Albe > >
