db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <derby-...@db.apache.org>
Subject [jira] Created: (DERBY-557) Client driver gets OutOfMemoryError when re-executing statement without closing ResultSet
Date Thu, 08 Sep 2005 15:33:39 GMT
Client driver gets OutOfMemoryError when re-executing statement without closing ResultSet
-----------------------------------------------------------------------------------------

         Key: DERBY-557
         URL: http://issues.apache.org/jira/browse/DERBY-557
     Project: Derby
        Type: Bug
  Components: Network Client  
    Versions: 10.1.1.0, 10.1.2.0, 10.2.0.0    
    Reporter: Knut Anders Hatlen
    Priority: Minor
     Fix For: 10.1.2.0, 10.2.0.0


When re-executing a statement without closing the old ResultSet, some of the old ResultSet's
resources are not released, and the network client will eventually get an OutOfMemoryError.

Example:

	Connection c = DriverManager.getConnection("jdbc:derby://localhost/mydb");
	PreparedStatement ps = c.prepareStatement("select * from sys.systables");
	while (true) {
		ResultSet rs = ps.executeQuery();
	}

This code will run for some time and then throw an OutOfMemoryError. Same thing happens with
Statement instead of PreparedStatement. If rs.close() is added in the loop, the code works.
Explicitly closing the ResultSet should not be necessary according to this quote from the
JDBC 3.0 spec:

  For Select statements, the statement is complete when the associated result set is closed.
The result set is closed as soon as one of the following occurs:
     - all of the rows have been retrieved
     - the associated Statement object is re-executed
     - another Statement object is executed on the same connection

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message