Re: Queries with large ResultSets
От | Andrea Aime |
---|---|
Тема | Re: Queries with large ResultSets |
Дата | |
Msg-id | 200405202022.37646.andrea.aime@aliceposta.it обсуждение исходный текст |
Ответ на | Re: Queries with large ResultSets (Kris Jurka <books@ejurka.com>) |
Ответы |
Re: Queries with large ResultSets
Re: Queries with large ResultSets |
Список | pgsql-jdbc |
Alle 18:01, giovedì 20 maggio 2004, Kris Jurka ha scritto: > On Wed, 19 May 2004, Jack Orenstein wrote: > > If I'm reading the source code correctly, the PostgreSQL 7.3.4 JDBC > > driver creates a ResultSet by evaluating the entire query, and putting > > all the rows into a Vector. ResultSet.next() iterates over the > > Vector. Is that in fact what is happening? > > Yes, in the 7.3 driver. The 7.4 driver (which works quite well against a > 7.3 database) will use a cursor based fetch to retrieve a chunk of rows at > a time. There are a number of restrictions required to be able to use > this method (It only works with autocommit off and FORWARD_ONLY result > sets). To enable this use Statement.setFetchSize to indicate how many > rows at a time you want retrieved. Also there is a patch to the 7.5 > driver to be able to retrieve subsets of the resultset for the scrollable > variety and hopefully I should get that in soon. Ugh... those limitation are really frightening, this means we cannot fetch big quantities of data outside of a transaction... this is a problem with application servers like GeoServer that keep a connection pool and need to fetch big quantities of data also outside a transaction... any hope to see this fixed soon? Is it a driver problem or a server limitation? Best regards Andrea Aime
В списке pgsql-jdbc по дате отправления: