Re: not fetching all query results - Mailing list pgsql-jdbc
From | ml-tb |
---|---|
Subject | Re: not fetching all query results |
Date | |
Msg-id | 201207201126.53950.ml-tb@emagixx.de Whole thread Raw |
In response to | Re: not fetching all query results (Craig Ringer <ringerc@ringerc.id.au>) |
Responses |
Re: not fetching all query results
|
List | pgsql-jdbc |
Am Freitag, 20. Juli 2012 schrieb Craig Ringer: > On 07/18/2012 05:00 AM, Radim Kolar wrote: > > Dne 17.7.2012 22:05, Dave Cramer napsal(a): > >> Radim, > >> > >> As per our docs > >> http://jdbc.postgresql.org/documentation/91/query.html#fetchsize-e > >> xample > >> > >> You need to do the select inside a transaction > > > > In transaction that simple example really works. Can it be fixed in > > driver to work in autocommit mode? I will try scrollable cursor > > next. > > I haven't looked into how the fetch size code works to see whether > it's possible for it to operate in autocommit. A quick look at > QueryExecutorImpl.sendOneQuery in > org/postgresql/core/v3/QueryExecutorImpl.java finds the line: > > boolean usePortal = (flags & QueryExecutor.QUERY_FORWARD_CURSOR) > != 0 && !noResults && !noMeta && fetchSize > 0 && !describeOnly; > > given that and the subsequent code I don't understand why an explicit > transaction is required. I've only done a tiny bit with the JDBC > code, though, and only related to the authentication system and > client certificates. Perhaps the the original poster is helped with a modified URL, that set the fetch size default != 0. We have the same issue here, plus that the used framework resets connections to default values (why ever ...). So we modified the possibilities of the driver URL: fixDefaults (true/false; default: false) defaultFetchSize (int, default: 0) defaultAutoCommit (true/false; default: true) > My rather blunt comment to you at the start of this thread was to > point out that JDBC driver development doesn't just happen. It's a > volunteer effort; people put their own time into this. Something > like > > "It should not be that difficult to get it fixed. I am not > interested in workarounds" > > is pretty dismissive of the work you're already getting for free and > without having contributed to it in any way. If you don't like it, > one of your options is to do something about it yourself. The PgJDBC > driver is open source, so rather than just asserting it can't be > that difficult, you have the opportunity to prove your assertion by > producing a patch that fixes your problem. Demanding that others > spend their time fixing a problem you care about is a bit rude. > > You can check the sources out here: > > http://jdbc.postgresql.org/development/git.html > > and there's developer info here: > > http://jdbc.postgresql.org/development/intro.html > > If you approach this with a the attitude of "this is causing a > problem for me and I would love some help fixing it, any suggestions > where I should start" you will probably get better results. This is obviously true :-) Bye Thomas
pgsql-jdbc by date: