[ 
https://issues.apache.org/jira/browse/JCR-1216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller resolved JCR-1216.
---------------------------------

       Resolution: Fixed
    Fix Version/s: 1.6.0

Committed in revision 752831 (trunk).
This is definitely a candidate for back-porting.

> Unreferenced sessions should get garbage collected
> --------------------------------------------------
>
>                 Key: JCR-1216
>                 URL: https://issues.apache.org/jira/browse/JCR-1216
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>             Fix For: 1.6.0
>
>         Attachments: referencePatch.txt, softReferencePatch.txt, 
> userSessionPatch.txt, weakReferencePatch.txt
>
>
> If an application opens many sessions and doesn't close them, they are never 
> garbage collected. After some time, the virtual machine will run out of 
> memory. This code will run out of memory after a few thousand logins:
> Repository rep = new TransientRepository();
> for (int i = 0; ; i++) {
>   rep.login(new SimpleCredentials("", new char[0]));
> }
> Using a finalizer to close SessionImpl doesn't work, because it seems there 
> are references from the (hard referenced part of the cache) to the 
> SessionImpl objects. Maybe it is possible to remove those references, or 
> change them to weak references.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to