You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Ernesto Reinaldo Barreiro (JIRA)" <ji...@apache.org> on 2013/01/14 20:36:13 UTC
[jira] [Updated] (WICKET-4975) client side memory leak on date
picker
[ https://issues.apache.org/jira/browse/WICKET-4975?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ernesto Reinaldo Barreiro updated WICKET-4975:
----------------------------------------------
Attachment: datepicker.tar.gz
quickstart for 6.x
> client side memory leak on date picker
> ---------------------------------------
>
> Key: WICKET-4975
> URL: https://issues.apache.org/jira/browse/WICKET-4975
> Project: Wicket
> Issue Type: Bug
> Components: wicket-datetime
> Affects Versions: 1.4.21, 1.5.8, 6.4.0
> Environment: any
> Reporter: Ernesto Reinaldo Barreiro
> Priority: Minor
> Attachments: datepicker.tar.gz
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> Under certain conditions date picker component leaks memory at client side. More concretely DatePicker#renderHead tries to clean up existing date pickers via
> AjaxRequestTarget target = component.getRequestCycle().find(AjaxRequestTarget.class);
> if (target != null)
> {
> String escapedComponentMarkupId = getEscapedComponentMarkupId();
> String javascript = "var e = Wicket.$('" + escapedComponentMarkupId + "Dp" +
> "'); if (e != null && typeof(e.parentNode) != 'undefined' && " +
> "typeof(e.parentNode.parentNode != 'undefined')) {" +
> "e.parentNode.parentNode.removeChild(e.parentNode);" + "YAHOO.wicket." +
> escapedComponentMarkupId + "DpJs.destroy(); delete YAHOO.wicket." +
> escapedComponentMarkupId + "DpJs;}";
> target.prependJavaScript(javascript);
> }
> but this fails if "panel" containing date pickers is completely replaced via AJAX. E.g. for date pickers placed on an AJAX navigated repeater. The result is that client side object
> YAHOO.wicket
> object grows and grows... and for
> 1- Wicket 1.5.x and wicket 1.4.x this means time for creating new date pickers grows steadily.
> 2- For wicket 1.6.x there seems not to have any performance hindrance (only the memory leak).
> I attach quick starts demonstrating this.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira