Tjek dine TCP/IP-sockets timeout-indstillinger på alle routere/switches mellem applikationsserverne og databaseserverne. Slå også logning til på databasesiden og se hele forbindelsens livscyklus og sammenlign timingen med fejlene i din applikation. Jeg foreslår, at du slår følgende indstillinger til i postgresql.conf, indtil du får en idé om, hvad du skal kigge efter:
log_connections = on
log_disconnections = on
log_statement = all
Disse kan aktiveres med en SIGHUP af postgres-processen (eller køre "SELECT pg_reload_conf();" som en database-superbruger.
Jeg vil være, at du har en "forbindelse lukket af fjernvært" eller noget lignende som den sidste besked, før den faktiske afbrydelse logges.
Jeg har set dette før, og det var timeout-indstillingerne på en mellemkontakt, der forårsagede det.