Обсуждение: How many file descriptors does postgres need?
G'day all, We recently had a bit of a catastrophe when one of our postgres databases opened too many files. It was a reasonably easyfix, but it did get me thinking. Is there a rule of thumb in determining how many file descriptors should be availableto a postgres database/cluster? I'd be happy to set it to some large number, but I'd really like some confidence about how much the database can grow witha new limit. Cheers! --Royce
On Mar 9, 2010, at 5:11 AM, Royce Ausburn wrote: > G'day all, > > We recently had a bit of a catastrophe when one of our postgres databases opened too many files. It was a reasonably easyfix, but it did get me thinking. Is there a rule of thumb in determining how many file descriptors should be availableto a postgres database/cluster? > > I'd be happy to set it to some large number, but I'd really like some confidence about how much the database can grow witha new limit. Postgresql is supposed to cope with file descriptor limits quite happily, as long as the OS actually restricts the numberof files a process can have open. If it doesn't restrict the number, just falls over if there's too many, there's apostgresql configuration option to limit it (max_files_per_process, I think). What OS are you on, and what was the catastrophe? Cheers, Steve
Steve Atkins <steve@blighty.com> writes: > Postgresql is supposed to cope with file descriptor limits quite happily, as long as the OS actually restricts the numberof files a process can have open. If it doesn't restrict the number, just falls over if there's too many, there's apostgresql configuration option to limit it (max_files_per_process, I think). Usually the problem is not that Postgres falls over, but that everything else on the box starts to fall over once PG has run the kernel out of file descriptors. Make sure max_connections * max_files_per_process is less than the kernel's file table size, with enough daylight for the machine's other activities. regards, tom lane