diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-01-26 18:19:48 +0200 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-01-26 18:39:13 +0200 |
commit | 6d90eaaa89a007e0d365f49d6436f35d2392cfeb (patch) | |
tree | 625c4dc75f0067c438696b9ebc96715521635e2f /src/include/storage/proc.h | |
parent | 467ff207f51439cadee7857d6a0874f34652ed53 (diff) | |
download | postgresql-6d90eaaa89a007e0d365f49d6436f35d2392cfeb.tar.gz postgresql-6d90eaaa89a007e0d365f49d6436f35d2392cfeb.zip |
Make bgwriter sleep longer when it has no work to do, to save electricity.
To make it wake up promptly when activity starts again, backends nudge it
by setting a latch in MarkBufferDirty(). The latch is kept set while
bgwriter is active, so there is very little overhead from that when the
system is busy. It is only armed before going into longer sleep.
Peter Geoghegan, with some changes by me.
Diffstat (limited to 'src/include/storage/proc.h')
-rw-r--r-- | src/include/storage/proc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/storage/proc.h b/src/include/storage/proc.h index 358d1a456cb..b68ae39268e 100644 --- a/src/include/storage/proc.h +++ b/src/include/storage/proc.h @@ -188,6 +188,8 @@ typedef struct PROC_HDR PGPROC *freeProcs; /* Head of list of autovacuum's free PGPROC structures */ PGPROC *autovacFreeProcs; + /* BGWriter process latch */ + Latch *bgwriterLatch; /* Current shared estimate of appropriate spins_per_delay value */ int spins_per_delay; /* The proc of the Startup process, since not in ProcArray */ |