Folks,

First off, I was going through PostgreSQL.conf.sample, and noticed that the 
bgwriter GUCs had multiplied:

#bgwriter_delay = 200           # 10-10000 milliseconds between rounds
#bgwriter_lru_percent = 1.0     # 0-100% of LRU buffers scanned in each 
round
#bgwriter_lru_maxpages = 5      # 0-1000 buffers max written per round
#bgwriter_all_percent = 0.333   # 0-100% of all buffers scanned in each 
round
#bgwriter_all_maxpages = 5      # 0-1000 buffers max written per round

I find the addition a little baffling, since previous tests ... both mine, 
and discussion of tests last December ... showed that manipulating the 
bgwriter variables had no useful effects, and one might as well leave them 
alone.   For example, I ran this test series on the 7/3 CVS:

bgwriter_delay  Default bgwriter_maxpages       Default 1260
bgwriter_delay  200     bgwriter_maxpages       100     1266
bgwriter_delay  100     bgwriter_maxpages       100     1270
bgwriter_delay  100     bgwriter_maxpages       200     1223
bgwriter_delay  100     bgwriter_maxpages       500     1261
bgwriter_delay  200     bgwriter_maxpages       500     1256
bgwriter_delay  50      bgwriter_maxpages       100     1221

I need to re-run this with some of the new wal_buffer and checkpoint stuff, 
but as you can see the only variation I've encountered so far has been 
random noise.

That given, do we really need to add more settings?  Can't we drop these 
and just have them be constants in the code?

I'm thinking for 8.2 we should just have
bgwriter_activity = 1    #frequency and size of bgwriter batches,
                                  # on a 1 .. 10 scale
... since that's as much of a handle as anyone needs, if they need any at 
all.

-- 
--Josh

Josh Berkus
Aglio Database Solutions
San Francisco

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to