Check iteration state saving for facets of dataTable component
---------------------------------------------------------------
Key: RF-9426
URL:
https://jira.jboss.org/browse/RF-9426
Project: RichFaces
Issue Type: Task
Security Level: Public (Everyone can see)
Components: component-tables, performance
Affects Versions: 4.0.0.Milestone3
Reporter: Nick Belaevski
Assignee: Konstantin Mishin
Fix For: 4.0.0.Milestone4
Here is the excerpt from the letter I've just received:
>>> There is memory leak in
UIDataAdaptorBase/rich:dataTable.
>>> It affects:
>>> - external filtering (input in "header" facet)
>>> - embedded filtering ("filterBy" column attribute) - facet
>>> "filterValueInput" is added internally
>>>
>>> Code in UIDataAdaptorBase#saveChildState:
>>> itr = c.getFacets().values().iterator();
>>> while (itr.hasNext()) {
>>> saveChildState(faces, (UIComponent) itr.next(), childState);
>>> }
>>>
>>> Column facet state is saved in the view for each row.
>>>
>>> For the table with 500 rows 5 columns with filtering that resulst in
>>> 350kB
>>> of extra view size.
>>> UIDataAdaptorBase$DataState size - 350 kB
>>> There are 2500 (500 rows * 5 columns) instances of
>>> UIDataAdaptorBase$SavedState.
>>>
>>> The same table without filtering does not have this issue and
>>> UIDataAdaptorBase$DataState size is 1 kB.
>>>
This affects 3.x. Please check if 4.x is affected by the problem.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira