On Thu, 8 Aug 2024 at 11:18, Costa Alexoglou <costa@dbtune.com> wrote:
...
> So I am running Benchbase (a benchmark framework) with 50 terminals (50 concurrent connections).
> There are 2-3 additional connections, one for a postgres-exporter container for example.
...
> So far so good, and with a `max_connections` at 100 there is no problem. What happens is that if I execute manually
`VACUUMFULL` the connections are exhausted.
> Also tried this with 150 `max_connections` to see if it just “doubles” the current connections, but as it turned out,
itstill exhausted all the connections until it reached `max_connections`.
> This was cross-checked, as the postgres-exporter could not connect, and I manually was not allowed to connect with
`psql`.
Have you tried to check where the connections are coming from and what
are they doing? Apart from the max-paralell-worker stuff already
commented by Ron in an scenario with a long live locking processes (
vacuum full ) combined with potentially aggresive connecting ( a
benchmark tool ) I would verify the benchmark tool is not timing out
and disconnecting improperly leaving connections hung up.
Francisco Olarte.