bgwriter tunables vs pg_stat_bgwriter

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Since getting on 8.4 I've been monitoring things fairly closely.
I whipped up a quick script to monitor pg_stat_bgwriter and save deltas every minute so I can ensure my bgwriter is beating out the backends for writes (as it is supposed to do).

Now, the odd thing I'm running into is this:

bgwriter_delay is 100ms (ie 10 times a second, give or take)
bgwriter_lru_maxpages is 500 (~5000 pages / second)
bgwriter_lru_multiplier is 4

Now, assuming I understand these values right the following is what should typically happen:

while(true)
{
    if buffers_written > bgwriter_lru_maxpages
or buffers_written > anticipated_pages_needed * bgwriter_lru_multiplier
   {
         sleep(bgwriter_delay ms)
          continue;
   }
   ...
}

so I should not be able to have more than ~5000 bgwriter_clean pages per minute. (this assumes writing takes 0ms, which of course is inaccurate)

However, I see this in my stats (they are deltas), and I'm reasonably sure it is not a bug in the code:

(timestamp, buffers clean, buffers_checkpoint, buffers backend)
2010-02-17 08:23:51.184018 | 1 | 1686 | 5 2010-02-17 08:22:51.170863 | 15289 | 12676 | 207 2010-02-17 08:21:51.155793 | 38467 | 8993 | 4277 2010-02-17 08:20:51.139199 | 35582 | 0 | 9437 2010-02-17 08:19:51.125025 | 8 | 0 | 3 2010-02-17 08:18:51.111184 | 1140 | 1464 | 6 2010-02-17 08:17:51.098422 | 0 | 1682 | 228 2010-02-17 08:16:51.082804 | 50 | 0 | 6 2010-02-17 08:15:51.067886 | 789 | 0 | 1

perhaps some stats buffering occurring or something or some general misunderstanding of some of these tunables?

--
Jeff Trout <jeff@xxxxxxxxxxxxx>
http://www.stuarthamm.net/
http://www.dellsmartexitin.com/




--
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux