From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Radoslaw Stachowiak <radek(at)alter(dot)pl> |
Cc: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: strange inefficiency in shared memory handling |
Date: | 2002-05-30 22:04:58 |
Message-ID: | 8084.1022796298@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Radoslaw Stachowiak <radek(at)alter(dot)pl> writes:
> of course this memory removal of cached index blocks is caused by normal
> queries and their memory (buffer) requirements, but certainly algorithm
> which chose which buffer to remove is a very ineffective on index blocks.
> looks to me that it preffer table-block too much (especially compared
> to index ones)
The buffer management code has absolutely no clue which blocks belong
to indexes and which to tables --- it handles all of them on a uniform
LRU basis.
> with buffers <1000 idx_blks_hit was always smaller than idx_blks_read,
> even by 10 times;
> statio_user_tables showed that hits were larger than reads by
> _great_ amount (factor of 2 and more) - so it shows that shared_buffers
> are used very well on tables but not on indexes :-(
This seems odd, but I wonder whether it is an artifact of some unusual
property of your query workload. You haven't offered enough detail to
let someone else try to reproduce it...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Radoslaw Stachowiak | 2002-05-30 22:27:28 | Re: strange inefficiency in shared memory handling |
Previous Message | Radoslaw Stachowiak | 2002-05-30 20:51:01 | strange inefficiency in shared memory handling |