db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kristian Waagan (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-1095) Closing an embedded connection does not seem to close associated EmbedStatements
Date Tue, 14 Mar 2006 12:17:59 GMT
    [ http://issues.apache.org/jira/browse/DERBY-1095?page=comments#action_12370338 ] 

Kristian Waagan commented on DERBY-1095:
----------------------------------------

I do not disagree that it is easy to implement isClosed to return the intended results (I
commented this when uploading the patch for DERBY-953).

However, by looking briefly at EmbedConnection, I cannot immediatly see how assoicated resources
are closed when EmbedConnection.close() is called. Can someone familiar with the code take
a few minutes to briefly explain how it is done? (I'm referring to reason 1 in the previous
comment by Dan)
With regard to statements and resultsets, are these being closed explicitly or are we only
nulling out the references to them?

> Closing an embedded connection does not seem to close associated EmbedStatements
> --------------------------------------------------------------------------------
>
>          Key: DERBY-1095
>          URL: http://issues.apache.org/jira/browse/DERBY-1095
>      Project: Derby
>         Type: Bug
>   Components: JDBC
>     Versions: 10.2.0.0
>     Reporter: Kristian Waagan
>     Assignee: Daniel John Debrunner
>     Priority: Minor
>  Attachments: Derby1095Repro.java
>
> Closing an embedded connection (calling EmbedConnection.close()) does not seem to close
associated EmbedStatements. 
> The severity of the bug is not determined. The least severe case is that the internal
EmbedStatement variable 'active' is not updated accordingly, the most severe case is that
the the resources bound to EmbedStatement will not be viable for garbage collection until
the EmbedStatement itself is (if user keeps references to it).
> If methods on the statement are called, Derby will correctly throw an NoCurrentConnection
exception, but the close() method is still never called automatically.
> The problem also seem to extend down to ResultSet.isClosed(), but this is probably due
to the bug in EmbedStatement.
> Problem detected while fixing DERBY-953; implement Statement.isClosed().

-- 
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