bgwriter tunables vs pg_stat_bgwriter
От | Jeff |
---|---|
Тема | bgwriter tunables vs pg_stat_bgwriter |
Дата | |
Msg-id | 777025E3-813C-4EA6-B654-E4C54F83AA1A@torgo.978.org обсуждение исходный текст |
Ответы |
Re: bgwriter tunables vs pg_stat_bgwriter
Re: bgwriter tunables vs pg_stat_bgwriter |
Список | pgsql-performance |
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@jefftrout.com> http://www.stuarthamm.net/ http://www.dellsmartexitin.com/
В списке pgsql-performance по дате отправления: