[pgpool-general: 8340] Tests w/ pgbench fail after identical run

Alessandro Dentella sandro.dentella at gmail.com
Thu Jul 14 07:09:28 JST 2022


I'm playing with pgpool2 and pgbench to understand how it behaves and which
are the best conf.

I have a streaming replication of 3 nodes but I detached the 2 secondaries
to test in simpler situation.
I created a db with pgbench -i -s 50
I set num_init_children = 800 and max_pool = 4
3200 max_connections on postgreSQL server
pgpool is on the same server of PostgreSQL
pgbench is on another machine
serialize_accept = on

The first run works:

# pgbench -p 5430 -c 400 -j 10 -T 15 --select-only -C test -U postgres -h

pgbench (14.3 (Ubuntu 14.3-1.pgdg20.04+1), server 14.2 (Ubuntu
starting vacuum...end.

transaction type: <builtin: select only>

scaling factor: 50

query mode: simple

number of clients: 400

number of threads: 10

duration: 15 s

number of transactions actually processed: 18312
latency average = 328.168 ms

average connection time = 8.166 ms

tps = 1218.888945 (including reconnection times)

but if I launch a second run right after, it normally fails with a lot of

pgbench:pgbench: error:  error: connection to server at "adk-test-pg-c1"
(, port 5430 failed: Cannot assign requested address
        Is the server running on that host and accepting TCP/IP connections?

Thanks to serialize_accept = on, load average stays below 8 (number of cpu)

There are a lot of things I don't understand but the one that I really
cannot understand is what changes between runs.
How is the system changed so that a second run fails?
I'd think it should be restored to the previous state.

I set  /proc/sys/net/ipv4/ip_local_port_range to 1025    65535
(I have similar behaviour with pgbouncer)

Any help or reading suggestion is well accepted

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.pgpool.net/pipermail/pgpool-general/attachments/20220714/b28084f1/attachment.htm>

More information about the pgpool-general mailing list