[Pgpool-general] Backend connections pool and child process
Erwan
ebs at antelink.com
Fri Sep 30 16:59:57 UTC 2011
Hi there,
I use a pgpool-II v3.0.3 instance and pgpool-II is only used for
failover between 2 database servers.
I have the impression that my backend connections pool managed by
pgpool-II doesn't work well (or not like I would).
Each time I connect to my DB through pgpool-II, a pgpool-II's child
process is used even if there is already a pgpool-II child with exactly
the same connection parameters (user,db and node) as you can see here:
pgpool-node $ ps fax | grep "pgpool:.*idle"
2768 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(33139) idle
2769 ? S 0:08 \_ pgpool: a-readonly aDB
my.server.net(43832) idle
2770 ? S 0:45 \_ pgpool: b-readonly bDB
my.server.net(56226) idle
2771 ? S 0:57 \_ pgpool: b-readonly bDB
my.server.net(43743) idle
2772 ? S 0:51 \_ pgpool: b-readonly bDB
my.server.net(41201) idle
2773 ? S 0:00 \_ pgpool: b-readonly bDB
my.server.net(43723) idle
2774 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(33135) idle
2775 ? S 0:00 \_ pgpool: b-readonly bDB
my.server.net(43719) idle
2776 ? S 0:08 \_ pgpool: a-readonly aDB
my.server.net(50730) idle
2777 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(43717) idle
2778 ? S 0:55 \_ pgpool: b-readonly bDB
my.server.net(43742) idle
2779 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(43725) idle
2780 ? S 0:57 \_ pgpool: b-readonly bDB
my.server.net(43731) idle
2781 ? S 0:10 \_ pgpool: a-readonly aDB
my.server.net(43729) idle
2784 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(43721) idle
2786 ? S 0:00 \_ pgpool: b-readonly bDB
my.server.net(43727) idle
10540 ? S 0:10 \_ pgpool: a-readonly aDB
my.server.net(43744) idle
10541 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(33141) idle
10872 ? S 0:00 \_ pgpool: a-readonly aDB
my.server.net(41200) idle
On my backend I can see the same number of connections from my pgpool-II
node...
However I believed I configured pgpool-II to have a pool of 4
connections by child, as you can see in my following settings:
...
num_init_children = 19
max_pool = 4
child_life_time = 300
connection_life_time = 300
child_max_connections = 0
client_idle_limit = 0
connection_cache = true
...
So I don't understand why I have so many "busy" childs on my pgpool-II
node and why/when/how pgpool-II child process use their pool.
Any clue will be greatly appreciated (even if I think there is something
I forgot/miss or don't understand in my pgpool-II config file).
Thank you in advance
/Erwan
More information about the Pgpool-general
mailing list