Greg Stark wrote: That's the situation I'm having, so it's OK. Crystal, being a Windows application, obviously runs on a different server than the database itself, so the connection between them is TCP/IP, not Unix domain sockets. And furthermore, that was exactly the problem as I described it - the fact that the third party software, instead of somehow instructing Crystal to send a cancel request to PostgreSQL, instead just kills the client process on the Windows side.On Mon, Jan 25, 2010 at 8:15 AM, Scott Marlowe <scott.marlowe@xxxxxxxxx> wrote:Is there a parameter to set in the configuration or some other means to shorten the time before an abandoned backend's query is cancelled?You can shorten the tcp_keepalive settings so that dead connections get detected faster.This won't help. The TCP connection is already being closed (or I think only half-closed). The problem is that in the Unix socket API you don't find out about that unless you check or try to read or write to it. The tcp_keepalive setting would only come into play if the remote machine crashed or was disconnected from the network. Herouth |