From c6c9474aafa4de357ae424cd18b69e8bf7a4babe Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Thu, 14 Mar 2019 10:25:27 +1300 Subject: Use condition variables to wait for checkpoints. Previously we used a polling/sleeping loop to wait for checkpoints to begin and end, which leads to up to a couple hundred milliseconds of needless thumb-twiddling. Use condition variables instead. Author: Thomas Munro Reviewed-by: Andres Freund Discussion: https://postgr.es/m/CA%2BhUKGLY7sDe%2Bbg1K%3DbnEzOofGoo4bJHYh9%2BcDCXJepb6DQmLw%40mail.gmail.com --- doc/src/sgml/monitoring.sgml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'doc/src') diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index e2630fd3682..60b89356f70 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -1281,7 +1281,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser Waiting in an extension. - IPC + IPC BgWorkerShutdown Waiting for background worker to shut down. @@ -1293,6 +1293,14 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser BtreePage Waiting for the page number needed to continue a parallel B-tree scan to become available. + + CheckpointDone + Waiting for a checkpoint to complete. + + + CheckpointStart + Waiting for a checkpoint to start. + ClogGroupUpdate Waiting for group leader to update transaction status at transaction end. -- cgit v1.2.3