[pgpool-general: 8148] Re: allocation of child processes is constantly growing
ishii at sraoss.co.jp
Wed May 11 18:01:24 JST 2022
Because connection pool cache is not shared among pgpool process as
explained in the FAQ.
> And this connection remains
But other child process never knows the same database connection is in
other child process. So there's no way for the new child process to
reuse the connection.
> Thanks for the reply. But still. The situation is this.
> The microservice connects to the child process and through it to the
> database. And this connection remains. Then the same microservice with
> the same user to the same database creates a new connection with
> another child process rather than reusing the old one that already
> exists. Why?
> On 11.05.2022 09:29, Tatsuo Ishii wrote:
>>> We are running an application in Kubernetes. Pgpool also works in
>>> Kubernetes. Each microservice has its own PostgreSQL
>>> database. Microservices are written in Java and connect to their
>>> databases via Pgpool .
>>> We have a very hot issue with Pgpool.
>>> Even in quiet mode, when there is no activity, the number of busy
>>> child processes and, accordingly, connections to databases is
>>> constantly growing on PostgreSQL and on and does not decrease,
>>> reaching the limit. It turns out that microservices make new
>>> connections to the database each time through a new child process, and
>>> do not reuse the existing one.
>>> Could you please tell me why this is happening.
>>> Explain, please, the mechanism of allocation of child process in
>>> Pgpool for client connections.
>>> When an existing client connection to a child process is reused and
>>> when not?
>> Please see the FAQ:
>> Best reagards,
>> Tatsuo Ishii
>> SRA OSS, Inc. Japan
>> English: http://www.sraoss.co.jp/index_en.php
More information about the pgpool-general