[ 
https://issues.apache.org/jira/browse/DERBY-6440?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13858985#comment-13858985
 ] 

Knut Anders Hatlen commented on DERBY-6440:
-------------------------------------------

Answering my own question: Since two foreign views with the same foreign 
database URL share the same underlying connection, closing the connection when 
the view is unloaded won't be safe unless there's some sort of reference count. 
Still, it would be useful to have a mechanism that automatically closes unused 
connections, since we cannot be sure that the foreign JDBC driver releases all 
resources when a connection is not explicitly closed.

> Connections opened by ForeignTableVTI never get released
> --------------------------------------------------------
>
>                 Key: DERBY-6440
>                 URL: https://issues.apache.org/jira/browse/DERBY-6440
>             Project: Derby
>          Issue Type: Bug
>          Components: Tools
>    Affects Versions: 10.11.0.0
>            Reporter: Knut Anders Hatlen
>            Assignee: Rick Hillegas
>         Attachments: derby-6440-01-aa-dropConnectionOnUnload.diff
>
>
> I noticed during a run of suites.All that one database instance never got 
> garbage collected, even after it had been shut down. It turned out it could 
> not get garbage collected because it was still referenced from the static 
> HashMap _connections in ForeignTableVTI. Looking closer at ForeignTableVTI, 
> it looks as if it only calls put() and get() on the HashMap, never remove(), 
> so its memory footprint will keep increasing as it is used.
> It would be good to have some way (preferably automatic) of releasing the 
> resources held by ForeignTableVTI when they are no longer needed.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to