Re: max_files_per_process limit - Mailing list pgsql-admin

From Dilek Küçük
Subject Re: max_files_per_process limit
Date
Msg-id 5d5d98b30811110441q772fd56o383d1022a760b9cf@mail.gmail.com
Whole thread Raw
In response to Re: max_files_per_process limit  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-admin

On Mon, Nov 10, 2008 at 5:24 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
"Dilek Küçük" <dilekkucuk@gmail.com> writes:
> We have a database of about 62000 tables (about 2000 tablespaces) with an
> index on each table. Postgresql version is 8.1.

You should probably rethink that schema.  A lot of similar tables can be
folded into one table with an extra key column.  Also, where did you get
the idea that 2000 tablespaces would be a good thing?  There's really no
point in more than one per spindle or filesystem.

> Although after the initial inserts to about 32000 tables the subsequent
> inserts are considerable fast, subsequent inserts to more than 32000 tables
> are very slow.

This has probably got more to do with inefficiencies of your filesystem
than anything else --- did you pick one that scales well to lots of
files per directory?
 
The database is working on FreeBSD 6.3 with UFS file system. It has 32 GB of RAM with 2 quadcore Intel Xeon 2.66 GHz processor, and about 11 TB of RAID5 storage.
 


> This seems to be due to the datatype (integer) of max_files_per_process
> option in the postgres.conf file which is used to set the maximum number of
> open file descriptors.

It's not so much the datatype of max_files_per_process as the datatype
of kernel file descriptors that's the limitation ...
 
We do not get any system messages related to the kernel file descriptor limit (like file: table is full) yet we will work again on both the database schema (tablespaces etc.) and system kernel variables.
 
Thanks,
Dilek Küçük
 


                       regards, tom lane

pgsql-admin by date:

Previous
From: "Dilek Küçük"
Date:
Subject: Re: max_files_per_process limit
Next
From: NetGraviton
Date:
Subject: Web Application Engineer - Drupal, PHP, CSS, JavaScript, Postgresql