pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Ralph Mason <ralph.mason@telogis.com>
To: pgsql-performance@postgresql.org
Subject: Re: Performance Woes
Date: Thu, 10 May 2007 12:34:47 +1200
Message-ID: <013101c7929b$046a25c0$0d3e7140$@mason@telogis.com> (raw)
In-Reply-To: <467669b30705091726j31fce52fp2f49649be675d811@mail.gmail.com>
References: <5132236932388612597@unknownmsgid>
	<467669b30705091726j31fce52fp2f49649be675d811@mail.gmail.com>

 

 

From: pgsql-performance-owner@postgresql.org
[mailto:pgsql-performance-owner@postgresql.org] On Behalf Of CAJ CAJ
Sent: 10 May 2007 12:26
To: Ralph Mason
Cc: pgsql-performance@postgresql.org
Subject: Re: [PERFORM] Performance Woes

 

 

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.

>What version of Pg/OS? What is your hardware config? 

>I had seen these errors with earlier versions of Pg 7.4.x which was fixed
in later releases according to the changelogs 



"PostgreSQL 8.1.4 on x86_64-redhat-linux-gnu, compiled by GCC
x86_64-redhat-linux-gcc (GCC) 4.1.0 20060304 (Red Hat 4.1.0-3)"

 

su postgres -c 'ulimit -a'

 

core file size          (blocks, -c) 0

data seg size           (kbytes, -d) unlimited

max nice                        (-e) 0

file size               (blocks, -f) unlimited

pending signals                 (-i) 49152

max locked memory       (kbytes, -l) 32

max memory size         (kbytes, -m) unlimited

open files                      (-n) 1000000

pipe size            (512 bytes, -p) 8

POSIX message queues     (bytes, -q) 819200

max rt priority                 (-r) 0

stack size              (kbytes, -s) 10240

cpu time               (seconds, -t) unlimited

max user processes              (-u) 49152

virtual memory          (kbytes, -v) unlimited

file locks                      (-x) unlimited

file locks                      (-x) unlimited

Seems like I should be able to use lots and lots of open files.

Machines are quad processor opterons, 4gb ram with raid 5 data and logging
to a raid 0.

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
 

view thread (10+ messages)  latest in thread

Message-ID: <013101c7929b$046a25c0$0d3e7140$@mason@telogis.com>
Permalink:  ../013101c7929b$046a25c0$0d3e7140$@mason@telogis.com/
Also on:    postgresql.org/message-id/013101c7929b$046a25c0$0d3e7140$@mason@telogis.com

 · 

reply

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: <013101c7929b$046a25c0$0d3e7140$@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