Re: [GENERAL] sorry, too many clients already error - Mailing list pgsql-general

From Tom Lane
Subject Re: [GENERAL] sorry, too many clients already error
Date
Msg-id 28849.1494975209@sss.pgh.pa.us
Whole thread Raw
In response to [GENERAL] sorry, too many clients already error  (Sandeep Gupta <gupta.sandeep@gmail.com>)
Responses Re: [GENERAL] sorry, too many clients already error
List pgsql-general
Sandeep Gupta <gupta.sandeep@gmail.com> writes:
> I have set max_connection = 40.
> The usage is somewhat not typical. It is basically
> experiment runs that connect to the database
> and dump results there.

> The experiments connect through JDBC and
> they close the connection when they are done.

> I can verify that no more than 20 clients/experiments
> are active at any given time.

It takes nonzero time for a backend process to actually exit after
the client has closed the connection.  (A client that wants to wait
for backend exit can do so by waiting for EOF on the socket, but
I doubt that the JDBC driver does so.)  If you're spinning through
sessions rapidly enough, you might just have >20 sessions that are
still in process of exiting when a new one comes in and gets this
error.

It'd also be a good thing to see if the client code is sending an
actual Terminate protocol message ('X') or is just closing the
socket.  If the latter, maybe it isn't really closing because the
socket is shared with some child process, or something like that?

Turning on log_connections/log_disconnections might help clarify
what's happening.

            regards, tom lane


pgsql-general by date:

Previous
From: Sandeep Gupta
Date:
Subject: [GENERAL] sorry, too many clients already error
Next
From: jonathan vanasco
Date:
Subject: [GENERAL] improvements/feedback sought for a working query that looks a bit ugly and might be inefficient