Liam Sharp created DERBY-6798:
---------------------------------
Summary: Forward only ResultSet doesn't release passed rows for GC
Key: DERBY-6798
URL: https://issues.apache.org/jira/browse/DERBY-6798
Project: Derby
Issue Type: Bug
Components: JDBC
Affects Versions: 10.11.1.1
Environment: MAC OSX 10.9.5
Reporter: Liam Sharp
Priority: Critical
I'd like to iterate over a ResultSet that is larger than the amount of memory
available to my application. I thought this would be possible with a
ResultSet.TYPE_FORWARD_ONLY but memory usage appears to increase as I loop
through the results and not be GC'd. Is my understanding correct? I've tried
this using the H2 database and it appears to do this.
I've attached a sample program to illustrate this. It creates a large table
then iterates over it logging out the memory usage as it goes. There is a pause
at the end of the iteration to allow the user to attach a debugger (such as
jvisualvm) to inspect memory usage and request GC.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)