Re: executeQuery hangs on busy server - PROPOSAL: socketTimeout parameter
От | Kris Jurka |
---|---|
Тема | Re: executeQuery hangs on busy server - PROPOSAL: socketTimeout parameter |
Дата | |
Msg-id | Pine.BSO.4.64.0708100538530.31534@leary.csoft.net обсуждение исходный текст |
Ответ на | executeQuery hangs on busy server - PROPOSAL: socketTimeout parameter (Andrea Spinelli <aspinelli@imteam.it>) |
Ответы |
Re: executeQuery hangs on busy server - PROPOSAL: socketTimeout parameter
Re: executeQuery hangs on busy server - PROPOSAL: socketTimeout parameter |
Список | pgsql-jdbc |
On Fri, 10 Aug 2007, Andrea Spinelli wrote: > I am using jdbc to access a large database on a busy PostgreSQL server (8.1) > hosted on Windows, from several web applications. > > Occasionally, my executeQuery hang forever. They block on a read operation in > SocketInputStream.socketRead0 (seen on the debugger) and stay there for > _days_. They disappear only by stopping the application server (Tomcat). I believe this is a bug in the 8.1 windows port. What's the exact version you are using? I think this was fixed in 8.1.6. > connection.setSoTimeout( 120000 ); > > Long queries (>2min) fail with a SQLException signalling a communication > problem with the server - which is what I want. > > I think this could be reworked into one more connection parameter > "socketTimeout", where 0 means no timeout; the value of the parameter would > of course substitute the hard-coded 120000. > > I've seen a feature request on GBorg about stopping long-running queries, > which could be satisfied by what I'm proposing. (actually, the connection > parameter works connection-wide, while the feature request deals with single > queries). People want the query to be stopped, but they don't want their whole connection to be killed which is what your change does. Kris Jurka
В списке pgsql-jdbc по дате отправления: