Re: ResultSet memory usage

From: "Dave Cramer" <Dave(at)micro-automation(dot)net>
To: "'Timo Savola'" <timo(dot)savola(at)codeonline(dot)com>, <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: ResultSet memory usage
Date: 2002-01-11 12:34:54
Message-ID: 00c701c19a9c$6149b280$c201a8c0@inspiron
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Timo,

Unfortunately this is an artifact of the way the backend works, once the
request is made the backend is going to give us all the data.

You can mitigate this using cursors
http://www.postgresql.org/idocs/index.php?sql-declare.html

Dave

-----Original Message-----
From: pgsql-jdbc-owner(at)postgresql(dot)org
[mailto:pgsql-jdbc-owner(at)postgresql(dot)org] On Behalf Of Timo Savola
Sent: Friday, January 11, 2002 6:42 AM
To: pgsql-jdbc(at)postgresql(dot)org
Subject: [JDBC] ResultSet memory usage

Hi. I'm new to this list, so please be gentle.

I've been using PostgreSQL with a Java application that needs to SELECT
(without LIMIT) from a table with a lot or rows. I tested the
application when the table in question had over 2 million rows, and the
JVM kept running out of memory (of course I could tune the heap size
settings). I don't actually need all the 2 million rows; the application
logic selects some of the first rows (in a manner that I couldn't
implement in the SQL query) and then stops reading the ResultSet.

I checked the code of the JDBC driver. As far as I can understand
org/postgresql/jdbc2/ResultSet.java, the whole result set is read into
memory at once. Is there any practical way to tune the driver to read
the rows a little at a time? Any plans to enhance the driver to do that?
Would it be a big job to write such a patch without prior knowledge of
the internals of PostgreSQL?

Timo

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
message can get through to the mailing list cleanly

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message glos 2002-01-11 13:12:46 How to get oid of newly inserted row with JDBC?
Previous Message Nick Fankhauser 2002-01-11 11:53:58 Re: ResultSet memory usage