Skip site navigation (1) Skip section navigation (2)

Re: executeQuery Locked

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: Lucas Sousa <lucas75(at)gmail(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: executeQuery Locked
Date: 2006-07-12 05:08:36
Message-ID: 44B483D4.3050001@opencloud.com (view raw or flat)
Thread:
Lists: pgsql-jdbc
Lucas Sousa wrote:

>             stm.setQueryTimeout( timeout );           

> It seems to me that for some (weird) reason, the query timeout is bein 
> achieved without throwing any error or the postgresql driver detecting 
> that.
> 
> This is some know issue?

Unfortunately setQueryTimeout() is currently a no-op. As a workaround, 
set the server's statement_timeout variable.

> Thread [zzzzzzz:12] (Suspended)
>     SocketInputStream.socketRead0(FileDescriptor, byte[], int, int, int) 
> line: not available [native method]
>     SocketInputStream.read(byte[], int, int) line: not available
>     BufferedInputStream.fill() line: not available
>     BufferedInputStream.read() line: not available
>     PGStream.ReceiveChar() line: 256
>     QueryExecutorImpl.processResults(ResultHandler, int) line: 1164

The driver is waiting for results from the server. Either the query is 
still running or something has got confused about what's happening at 
the protocol level.

Can you reproduce this with loglevel=2 set (as a URL parameter, see the 
driver docs)? Or a tcpdump/snoop/ethereal capture of the connection with 
the server when it gets stuck would also be useful. Also, if you could 
attach to the corresponding backend via gdb or similar and get a stack 
trace that may help.

-O

In response to

Responses

pgsql-jdbc by date

Next:From: Oliver JowettDate: 2006-07-12 05:11:06
Subject: Re: how to monitor the amount of bytes fetched in a executeQuery()
Previous:From: Oliver JowettDate: 2006-07-12 05:01:47
Subject: Re: Limit vs setMaxRows issue

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group