Re: Getting error "too many clients already" despite having a db connection limit set - Mailing list pgsql-general

From Marco Torres
Subject Re: Getting error "too many clients already" despite having a db connection limit set
Date
Msg-id CAG2LZV7pSbd7Snx_foov-tkXw050sD54EiPv0x0C4J9VFxWG9g@mail.gmail.com
Whole thread Raw
In response to Re: Getting error "too many clients already" despite having a db connection limit set  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general

You might want to explore pgpool and pgbouncer. Depending in your use case you might want to glue them togeter.

On Mon, Jun 16, 2025, 10:39 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
adolfo flores <adolfoflores2211@gmail.com> writes:
> I hope you can help me with an issue we're experiencing. We have an app
> running on Kubernetes that opens a huge number of connections within a
> couple of seconds.

You need to fix that app to be less unfriendly, or maybe put it behind
a connection pooler.

> Is it expected behavior to reach the max_connections limit when that app
> opens many connections in a short period of time, even if a connection
> limit is set for that database and everything else uses no more than 10% of
> the max_connections?

It takes a finite amount of time for a new backend process to figure
out which database it's supposed to connect to and then detect whether
the per-DB connection limit is exceeded.  In the meantime, that
session does count against the global limit, so yeah this isn't
surprising if the connection arrival rate is high enough.

                        regards, tom lane


pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Getting error "too many clients already" despite having a db connection limit set
Next
From: Adrian Klaver
Date:
Subject: Re: Getting error "too many clients already" despite having a db connection limit set