Jako, że system sypał mi ciągle błędami jak na screenie przyjrzałem się logom, a tam między innymi taka informacja:
Npgsql.PostgresException (0x80004005): 53300: remaining connection slots are reserved for non-replication superuser connections
Włączyłem sobie liczenie połaczeń i wyszło mi, że jest około 50 na stałe, a w pikach ponad 100 połączeń. A w konfigu postgres jest max_connection na 100 ustawione. Zwiększyłem wstępnie ilość połączeń dwukrotnie, ale pytanie które mam to czy taka ilość połączeń jest normalna w grupie około 30 ludzi obsługujących EZD? Czy może coś się dzieje czego nie zauważam?
ALARM: 2025-12-19,08:07:01 - Wykryto 102 połączeń!
ALARM: 2025-12-19,08:08:01 - Wykryto 113 połączeń!

Błąd ten oznacza osiągnięcie twardego limitu połączeń, przy którym Postgres zostawia już tylko pule zarezerwowane dla superusera.
W PostgreSQL są dwa istotne parametry:
Domyślnie w konfiguracji postgres jest:
max_connections = 100
superuser_reserved_connections = 3
to realnie aplikacje mogą używać tylko ~97 połączeń.
Po ich zajęciu Postgres blokuje wszystkie kolejne próby i daje dokładnie ten błąd.
Nawet przy 30 użytkownikach, połączeń do bazy danych jest więcej, szczególnie przy dodawaniu metadanych do dokumentów. EZDRP korzysta w tedy z puli max_connections oraz z puli superuser_reserved_connections (tak wynika z obserwacji). Samo zwiększenie parametrów max_connections w konfiguracji postgres nie załatwia tematu. Trzeba też w connection string ustawić ilość połączeń dodając parametr Maximum Pool Size=XXX. Warto też zmienic w konfiguracji superuser_reserved_connections na większą wartość ale bez przesady. Zmieniając te parametry, trzeba mieć na uwadze parametry serwera/maszyny wirtualnej z postgress (pamięć/rdzenie), zwiększanie ich znacznie podnosi zapotrzebowanie na zasoby.
Dziękuję za fajne wyjaśnienie. Przestało mi się dławić wreszcie EZD.