On Thu, Oct 29, 2009 at 10:24 PM, Greg Smith <gsmith@xxxxxxxxxxxxx> wrote: > There are two ways that that writes can hang: > > 1) You've gotten to the point in the checkpoint cycle where it's calling > fsync to flush everything out of the filesystem. At this point you could > potentially have a big chunk of data that needs to go out to disk, and any > other client that needs to write something (or needs a resource locked by a > writer) is stuck behind that. > > 2) The entire OS write cache is filled. Once that happens, if a client > tries to write something else, the OS will force it to nap until there's > space again to hold that write. I'm on FreeBSD. I've got my shared_buffers set to 1200MB on a box with 20GB of RAM, and fast external RAID on a fibre channel. Is that perhaps too low to keep the "hot" bits of my DB in memory? I hear so much conflicting advice on how big to set shared_buffers... I've tweaked the checkpoint target to 0.8 and segments to 64. Is 15 minutes reasonable for the timeout value? I really don't think I'm saturating the disk bandwidth. I see spikes of 18MB/s or more, but it usually hovers at under 3MB/s according to iostat output. -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general