Re: Wait events for delayed checkpoints
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2023-10-12T17:32:29Z
Lists: pgsql-hackers
On Wed, Oct 11, 2023 at 9:13 PM Thomas Munro <thomas.munro@gmail.com> wrote: > You can't tell if your checkpointer is spending a lot of time waiting > around for flags in delayChkptFlags to clear. Trivial patch to add > that. I've managed to see it a few times when checkpointing > repeatedly with a heavy pgbench workload. > > I had to stop and think for a moment about whether these events belong > under "WaitEventIPC", "waiting for notification from another process" > or under "WaitEventTimeout", "waiting for a timeout to expire". I > mean, both? It's using sleep-and-poll instead of (say) a CV due to > the economics, we want to make the other side as cheap as possible, so > we don't care about making the checkpointer take some micro-naps in > this case. I feel like the key point here is that it's waiting for > another process to do stuff and unblock it. IPC seems right to me. Yeah, a timeout is being used, but as you say, that's an implementation detail. +1 for the idea, too. -- Robert Haas EDB: http://www.enterprisedb.com
Commits
-
Add wait events for checkpoint delay mechanism.
- 0013ba290b66 17.0 landed