Commit Graph
2 Commits
Author SHA1 Message Date
binwiederhier f7d106a73c Do not set TCP_USER_TIMEOUT on Unix sockets
The option only exists for TCP, so every connection over a socket (host=/var/run/postgresql) failed with "operation not supported".

Claude-Session: https://claude.ai/code/session_01DeXuhSjq5Gta5qPJgSceFe
2026-11-03 21:01:27 +00:00
binwiederhier 9e94633cb4 Give up on a database connection after 30s without an acknowledgment
After a managed database node is replaced (resize, failover), queries in flight on connections to
the old node are never acknowledged, and the kernel retransmits for ~15 minutes before the
connection fails. On 2026-11-03 that held ~40 pool slots per replica for ~25 minutes after each
replica resize. TCP_USER_TIMEOUT bounds unacknowledged data to 30s on Linux.
2026-11-03 16:56:25 +00:00