Derrick Rice <derrick.rice@xxxxxxxxx> writes: > I'm investigating (using 8.2) an instance of a database client > connection remaining open in a single query well past statement > timeout settings.? I understand that severed TCP connections can cause > the backend to hang until the connection is closed, but our tcp > keepalive settings should have recognized that condition after about > 30 minutes.? The connection and backend didn't terminate for nearly 90 > minutes. > > What can cause this?? Why would these tcp and statement timeout settings not terminate the backend? Try trussing the backend process. You may find it in a network IO wait trying to send data to a client that is hung or over a socket that was timed out by a firewall or network equipment. Such a condition will cause the backend to be unable to hear the cancel. The statement will still show as running in pg_stat_activity. SIGTERM on such a backend will probably also fall on deaf ears. This has been my experience several times in an environment of EnterpriseDB 8.2 systems on Solaris 10. YMMV > -- Jerry Sievers e: gsievers19@xxxxxxxxxxx p: 305.321.1144 -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general