postgres=> select max_conn,used,res_for_super,max_conn-used-res_for_super
res_for_normal
from
(select count(*) used from pg_stat_activity) t1,
(select setting::int res_for_super from pg_settings where
name='superuser_reserved_connections') t2,
(select setting::int max_conn from pg_settings where name='max_connections') t3
;
max_conn | used | res_for_super | res_for_normal
----------+------+---------------+----------------
100 | 42 | 3 | 55
(1 row)
Solution or next step
Probably reduce the idle time for connections in a pool.
Given the number of available connections (55 as seen above), it shouldn't have failed, but
remaining connection slots are reserved for non-replication superuser connections
does indicate something else. Not sure how to ensure this doesn't happen again
Context
When opening https://ci-fiji.akvolumen.org/ after logging in, the call to
/api/env
was failing with a 500 error leaving the frontend blank.Problem or idea
stack
current open connections
Solution or next step
Probably reduce the idle time for connections in a pool.
Given the number of available connections (55 as seen above), it shouldn't have failed, but
does indicate something else. Not sure how to ensure this doesn't happen again