From: | John A Meinel <john(at)arbash-meinel(dot)com> |
---|---|
To: | Martin Nickel <martin(at)portant(dot)com> |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: shared buffers |
Date: | 2005-09-11 12:35:53 |
Message-ID: | 432424A9.4060403@arbash-meinel.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
Martin Nickel wrote:
> Chris,
> Would you say that 30000 pages is a good maximum for a Postgres install?
> We're running 8.0.3 on 64-bit SUSE on a dual Opteron box with 4G and have
> shared_buffers set at 120000. I've moved it up and down (it was 160000
> when I got here) without any measurable performance difference.
What I've read on the mailing list, is that usually the sweet spot is
actually around 10k pages. 120k seems far too high.
I believe that the major fixes to the buffer manager are more in 8.1
rather than 8.0, so you probably are hitting some problems. (The biggest
problem was that there were places that require doing a complete scan
through shared memory looking for dirty pages, or some such).
>
> The reason I ask is because I occasionally see large-ish queries take
> forever (like cancel-after-12-hours forever) and wondered if this could
> result from shared_buffers being too large.
There are lots of possibilities for why these take so long, perhaps you
would want to post them, and we can try to help.
For instance, if you have a foreign key reference from one table to
another, and don't have indexes on both sides, then deleting from the
referenced table, will cause a sequential scan on the referring table
for *each* deleted row. (IIRC).
John
=:->
>
> Thanks for your (and anyone else's) help!
> Martin Nickel
From | Date | Subject | |
---|---|---|---|
Next Message | Ksenia Marasanova | 2005-09-11 17:12:58 | LEFT JOIN optimization |
Previous Message | Guido Neitzer | 2005-09-11 10:35:09 | Re: Index not used with prepared statement |