Thomas Heigl created WICKET-6982: ------------------------------------ Summary: Unnecessary initialization of stateful pages in ListenerRequestHandler Key: WICKET-6982 URL: https://issues.apache.org/jira/browse/WICKET-6982 Project: Wicket Issue Type: Improvement Components: wicket-core Affects Versions: 9.10.0 Reporter: Thomas Heigl Assignee: Thomas Heigl Attachments: image-2022-05-16-11-49-09-093.png
ListenerRequestHandler currently forces initialization of pages. For already initialized stateful pages, this traverses the entire component hierarchy. For large pages, this can be a costly operation. My profiler shows a significant amount of CPU load coming from these unnecessary traversals: !image-2022-05-16-11-49-09-093.png|width=427,height=213! Forcing page initialization was originally introduced in WICKET-4416 in [this commit|https://github.com/apache/wicket/commit/42a436235ff4ed60f1eaa0f406ea96aa63a6eb2e] to fix an issue with expired pages and checking for statelessness. In WICKET-5083, [this commit|https://github.com/apache/wicket/commit/34f43642195058f375d161dbb7cec58b40711423] added the same forced initialization directly to {{{}Page.isPageStateless(){}}}. I think we can get rid of the initialization in {{ListenerRequestHandler}} and rely on the conditional logic in {{Page.isPageStateless}} to trigger initialization if necessary. -- This message was sent by Atlassian Jira (v8.20.7#820007)