On Feb 17, 2010, at 6:38 PM, Greg Smith wrote:

> Ben Chobot wrote:
>> Is there a way to tell if I really am just keeping the same few pages dirty 
>> throughout every checkpoint? I wouldn't have expected that, but given our 
>> application I suppose it is possible.
> 
> You can install pg_buffercache and look at what's in the cache to check your 
> theory.  I have some sample queries that show neat things at 
> http://www.westnet.com/~gsmith/content/postgresql/bufcache.sh


This appears to be fairly typical:

# select count(*),isdirty,usagecount from pg_buffercache group by 
isdirty,usagecount order by usagecount desc,isdirty;
 count  | isdirty | usagecount 
--------+---------+------------
 670629 | f       |          5
  75766 | t       |          5
 237311 | f       |          4
   5372 | t       |          4
  74682 | f       |          3
     31 | t       |          3
  73786 | f       |          2
     18 | t       |          2
 104112 | f       |          1
     62 | t       |          1
  68951 | f       |          0
(11 rows)

Is it reading it correctly to say that the bgwriter probably wouldn't help 
much, because a majority of the dirty pages appear to be popular?

Reply via email to