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

Matthias Weßendorf resolved TRINIDAD-1289.
------------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.2.10-core
         Assignee: Matthias Weßendorf

applied the patch to fixed the bug and ported the patch to trunk.

Thanks, blake!

> _activePageState in StatemManagerImpl should be on the session level
> --------------------------------------------------------------------
>
>                 Key: TRINIDAD-1289
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1289
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>    Affects Versions: 1.2.9-core
>            Reporter: Stevan Malesevic
>            Assignee: Matthias Weßendorf
>             Fix For: 1.2.10-core
>
>         Attachments: JIRA_1289_1291.patch
>
>
> StateManagerImpl has a code like this:
>        synchronized(this)
>        {
>          if (_activePageState != null)
>            _activePageState.clearViewRootState();
>                  _activePageState = pageState;
>        } 
> There are two problems here:
> 1. Even when the last user session on the system expires the memory under 
> PageState, which holds onto UIViewRoot, will not be gc-ed since Application 
> holds onto StateManagerImpl which holds onto PageState
> 2. _activePageState is member of StateManagerImpl, which means different user 
> sessions will call clearViewRootState on each other
> Basically, _activePageState should be kept on Session so that both of these 
> issues are taken care of

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