Postgresql database terminates abruptly with toomay open files error

Started by Sri Mrudula Attiliabout 1 year ago8 messagesgeneral
Jump to latest

Hello Team,

 We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

Below are few alerts that we could see from the postgresql.log

< 2025-01-14 11:37:20.724 GMT >LOG:  out of file descriptors: Too many
open files in system; release and retry

< 2025-01-14 11:37:20.724 GMT >FATAL:  epoll_create1 failed: Too many
open files in system

The number of allowed openfiles at OS level are 65000. even then we see
these all these being utilised and causing the database to terminate.

Is there a way we could avoid this.

Thanks,

Sri

In reply to: Sri Mrudula Attili (#1)
Postgresql database terminates abruptly with too many open files error

Hello Team,

 We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

Below are few alerts that we could see from the postgresql.log

< 2025-01-14 11:37:20.724 GMT >LOG:  out of file descriptors: Too many
open files in system; release and retry

< 2025-01-14 11:37:20.724 GMT >FATAL:  epoll_create1 failed: Too many
open files in system

The number of allowed openfiles at OS level are 65000. even then we see
these all these being utilised and causing the database to terminate.

Is there a way we could avoid this.

Thanks,

Sri

#3Frank Lanitz
frank@frank.uvena.de
In reply to: Sri Mrudula Attili (#2)
Re: Postgresql database terminates abruptly with too many open files error

Hello,

Have you checked something like lsof to see open file descriptors to see?

Cheers,
frank

Am 14.01.25 um 13:58 schrieb Sri Mrudula Attili:

Show quoted text

Hello Team,

 We have a postgresql VDB(virtual database- Delphix) that keeps terminating due "to too many open files".

Below are few alerts that we could see from the postgresql.log

< 2025-01-14 11:37:20.724 GMT >LOG:  out of file descriptors: Too many open files in system; release and retry

< 2025-01-14 11:37:20.724 GMT >FATAL:  epoll_create1 failed: Too many open files in system

The number of allowed openfiles at OS level are 65000. even then we see these all these being utilised and causing the database to terminate.

Is there a way we could avoid this.

Thanks,

Sri

#4Ron
ronljohnsonjr@gmail.com
In reply to: Sri Mrudula Attili (#2)
Re: Postgresql database terminates abruptly with too many open files error

On Tue, Jan 14, 2025 at 7:58 AM Sri Mrudula Attili <sri@ebi.ac.uk> wrote:

Hello Team,

We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

Below are few alerts that we could see from the postgresql.log

< 2025-01-14 11:37:20.724 GMT >LOG: out of file descriptors: Too many
open files in system; release and retry

< 2025-01-14 11:37:20.724 GMT >FATAL: epoll_create1 failed: Too many
open files in system

The number of allowed openfiles at OS level are 65000. even then we see
these all these being utilised and causing the database to terminate.

Is there a way we could avoid this.

We need more information.

--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: Sri Mrudula Attili (#2)
Re: Postgresql database terminates abruptly with too many open files error

Sri Mrudula Attili <sri@ebi.ac.uk> writes:

 We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

What do you have max_connections set to, and how many actually-live
server processes are there typically?

The number of allowed openfiles at OS level are 65000.

I'm suspecting that you either need to increase that, decrease
max_files_per_process (which defaults to 1000), or decrease
max_connections.

regards, tom lane

In reply to: Tom Lane (#5)
Re: Postgresql database terminates abruptly with too many open files error

Hello Tom,

The max_connections =200 and max_files_per_process =1000 as you mentioned.

So should a max_files_per_process =500 helps?

I could see from the number of connections to the databaseis not
exceeding 20. But still these 20 are causing all the damage or using up
all the openfiles quota.

Thanks,

Sri

Show quoted text

On 14/01/2025 14:19, Tom Lane wrote:

Sri Mrudula Attili <sri@ebi.ac.uk> writes:

 We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

What do you have max_connections set to, and how many actually-live
server processes are there typically?

The number of allowed openfiles at OS level are 65000.

I'm suspecting that you either need to increase that, decrease
max_files_per_process (which defaults to 1000), or decrease
max_connections.

regards, tom lane

#7Durgamahesh Manne
maheshpostgres9@gmail.com
In reply to: Sri Mrudula Attili (#6)
Re: Postgresql database terminates abruptly with too many open files error

---------- Forwarded message ---------
From: Sri Mrudula Attili <sri@ebi.ac.uk>
Date: Wed, 15 Jan, 2025, 17:12
Subject: Re: Postgresql database terminates abruptly with too many open
files error
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: <pgsql-general@postgresql.org>

Hello Tom,

The max_connections =200 and max_files_per_process =1000 as you mentioned.

So should a max_files_per_process =500 helps?

I could see from the number of connections to the databaseis not
exceeding 20. But still these 20 are causing all the damage or using up
all the openfiles quota.

Thanks,

Sri

On 14/01/2025 14:19, Tom Lane wrote:

Sri Mrudula Attili <sri@ebi.ac.uk> writes:

We have a postgresql VDB(virtual database- Delphix) that keeps
terminating due "to too many open files".

What do you have max_connections set to, and how many actually-live
server processes are there typically?

The number of allowed openfiles at OS level are 65000.

I'm suspecting that you either need to increase that, decrease
max_files_per_process (which defaults to 1000), or decrease
max_connections.

regards, tom lane

Hi Team,

What is the final conclusion for this ?

Regards,
Durga Mahesh

#8Peter J. Holzer
hjp-pgsql@hjp.at
In reply to: Sri Mrudula Attili (#6)
Re: Postgresql database terminates abruptly with too many open files error

On 2025-01-15 11:42:30 +0000, Sri Mrudula Attili wrote:

The max_connections =200 and max_files_per_process =1000 as you mentioned.

So should a max_files_per_process =500 helps?

I could see from the number of connections to the databaseis not exceeding
20. But still these 20 are causing all the damage or using up all the
openfiles quota.

If there are 20 processes with at most 1000 open files each, that's only
20'000 open files. So where do the other 45'536 files come from?

Use something like

lsof | awk '{print $1, $2}' | uniq -c | sort -n

to find the processes with the most open files (but be aware that lsof
reports file descriptors for each thread, so any multi-threaded programs
will be vastly inflated)

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp@hjp.at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"