I’m running into a problem where the connection between application its database is timing out after 12 hours. Here’s the context: · Two servers (one running the application and another hosting the database) in the Amazon AWS environment on different subnets within a virtual private cloud · The server hosting the application is running Ubuntu 14.04.2 LTS · The server hosting the database is running Ubuntu 14.04.2 LTS and PostgreSQL version 9.4.4 · An stunnel connection is provisioned from the client to the database. The app server is running stunnel version 4.53 with the following stunnel.conf settings: pid = /stunnel4.pid [postgres-<host>] client = yes protocol = pgsql accept = 5432 connect = <host>:5432 options = NO_TICKET retry = yes · The database is provisioned to only accept “hostssl” type connections from the application server I’ve enabled the logging of PostgreSQL connections and disconnections and I see that for connections that terminate before the associated query completes, the session time shown in the disconnect message is 12 hours plus three or four seconds. I see this problem with both of the default tcp_keepalives settings of: #tcp_keepalives_idle = 0 #tcp_keepalives_interval = 0 #tcp_keepalives_count = 0 And with the following settings: tcp_keepalives_idle = 120 tcp_keepalives_interval = 120 tcp_keepalives_count = 5 I don’t see the disconnect problem for long-running queries that use a local database connection. Any advice on what might be causing remote database connections to drop after 12 hours (and how to work around the issue)? Kind regards, |