[pgpool-general: 8340] Tests w/ pgbench fail after identical run
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
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"
(10.1.201.21), 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...
More information about the pgpool-general