Re: shared buffers - Mailing list pgsql-performance

From John A Meinel
Subject Re: shared buffers
Date
Msg-id 432424A9.4060403@arbash-meinel.com
Whole thread Raw
In response to Re: shared buffers  (Martin Nickel <martin@portant.com>)
List 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

Attachment

pgsql-performance by date:

Previous
From: Guido Neitzer
Date:
Subject: Re: Index not used with prepared statement
Next
From: Ksenia Marasanova
Date:
Subject: LEFT JOIN optimization