Re: Built-in connection pooling - Mailing list pgsql-hackers

From Konstantin Knizhnik
Subject Re: Built-in connection pooling
Date
Msg-id e6995f5d-07a3-72cf-6b1a-92d0dff28b8d@postgrespro.ru
Whole thread Raw
In response to Re: Built-in connection pooling  (Tatsuo Ishii <ishii@sraoss.co.jp>)
Responses Re: Built-in connection pooling
List pgsql-hackers

On 20.04.2018 12:02, Tatsuo Ishii wrote:
>
> I understand your customers like to have unlimited number of
> connections.  But my customers do not. (btw, even with normal
> PostgreSQL, some of my customers are happily using over 1k, even 5k
> max_connections).

If you have limited number of client, then you do not need pooling at all.
With the only one exception if clients for some reasons do not want to 
keep connections to database server and
prefer to establish connection on demand and disconnect as soon as possible.
But IMHO in most cases it meas bad design of client application, because 
establishing connection (even with connection pooler) is quite expensive 
operation.
The primary idea and main benefit of built-in connection pooler is to
>> support session semantic with limited number of backends.
> I am confused.  If so, why do you want to push statement based or
> transaction based built-in connection pooler?

I want to provide session semantic but do not start dedicated backend 
for each session.
Transaction level rescheduling (rather than statement level resheduling) 
is used to avoid complexity with storing/restoring transaction context 
and maintaining locks.

-- 
Konstantin Knizhnik
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



pgsql-hackers by date:

Previous
From: Amit Langote
Date:
Subject: Re: Should we add GUCs to allow partition pruning to be disabled?
Next
From: Amit Langote
Date:
Subject: Re: Boolean partitions syntax