From: Ralph Mason <ralph.mason@telogis.com>
To: pgsql-performance@postgresql.org
Subject: Performance Woes
Date: Thu, 10 May 2007 11:51:12 +1200
Message-ID: <011401c79294$f12223b0$d3666b10$@mason@telogis.com> (raw)
Hi,
I have several databases. They are each about 35gb in size and have about
10.5K relations (count from pg_stat_all_tables) in them. Pg_class is about
26k rows and the data directory contains about 70k files. These are busy
machines, they run about 50 xactions per second, ( aproxx insert / update /
delete about 500 rows per second).
We started getting errors about the number of open file descriptors
: 2007-05-09 03:07:50.083 GMT 1146975740: LOG: 53000: out of file
descriptors: Too many open files; release and retry
2007-05-09 03:07:50.083 GMT 1146975740: CONTEXT: SQL statement "insert ..
"
PL/pgSQL function "trigfunc_whatever" line 50 at execute statement
2007-05-09 03:07:50.083 GMT 1146975740: LOCATION: BasicOpenFile, fd.c:471
2007-05-09 03:07:50.091 GMT 0: LOG: 00000: duration: 12.362 ms
2007-05-09 03:07:50.091 GMT 0: LOCATION: exec_simple_query, postgres.c:1090
So we decreased the max_files_per_process to 800. This took care of the
error *BUT* about quadrupled the IO wait that is happening on the machine.
It went from a peek of about 50% to peeks of over 200% (4 processor
machines, 4 gigs ram, raid). The load on the machine remained constant.
I am really to get an understanding of exactly what this setting is and
what is out of file descriptors and how I can fix that. I need to bring
that IO back down.
Thanks for any help.
Ralph
--
Internal Virus Database is out-of-date.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.15.9/573 - Release Date: 05/12/2006
16:07
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: ralph.mason@telogis.com
Subject: Re: Performance Woes
In-Reply-To: <011401c79294$f12223b0$d3666b10$@mason@telogis.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox