[ https://issues.apache.org/jira/browse/MYFACES-3572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Leonardo Uribe updated MYFACES-3572: ------------------------------------ Status: Patch Available (was: Open) > [perf] remember initial state for properties changed in normal JSF lifecycle > ---------------------------------------------------------------------------- > > Key: MYFACES-3572 > URL: https://issues.apache.org/jira/browse/MYFACES-3572 > Project: MyFaces Core > Issue Type: Improvement > Components: JSR-314 > Reporter: Leonardo Uribe > Assignee: Leonardo Uribe > Attachments: MYFACES-3572-1.patch > > > There are 4 component properties that are very special in JSF: > value > localValueSet > valid > submittedValue > These ones are used intensively over JSF lifecycle. By performance reasons, > PSS algorithm does not save the initial state of a component and instead, > just mark the properties that were changed from its initial state and save > them in the delta state. This reduce the required memory for a component and > also reduce the necessary calculations to derive the delta. > But since these 4 properties are used intensively, it is worth to calculate > the initial state and store it into the StateHelper. Later, we can use that > information in StateHelper.saveState(), to remove from delta the values that > are not necessary to save, because are the same ones from the initial state. > We only need to add some lines into UIInput.markInitialState(), which is > reasonable. > The result of this change is an important reduction over state size generated > by input components. If validation is successful, the input component will > not generate state, and if the validation fails, only the components with > some value to save will store something into the state. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira