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

Timo Rantalaiho resolved WICKET-1857.
-------------------------------------

    Resolution: Fixed

Committed fix to both trunk and 1.3.x

> Unfound markup information is not entirely cached even in deployment mode
> -------------------------------------------------------------------------
>
>                 Key: WICKET-1857
>                 URL: https://issues.apache.org/jira/browse/WICKET-1857
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.3.4, 1.4-M3
>            Reporter: Timo Rantalaiho
>            Assignee: Timo Rantalaiho
>             Fix For: 1.3.5, 1.4-M4
>
>
> Unfound markup information is not entirely cached even in deployment mode, 
> which causes performance problems. The problem has a very broad effect, 
> because checking for non-existent localised versions of markup causes a lot 
> of cases of unfound markup. This showed up first in our load tests, and was 
> later confirmed by profiling.
> If you don't have the localised version of your markup to your current 
> locale, this markup is looked for but never found. This bug causes the lookup 
> to repeat on every request when the component is repainted, which becomes a 
> major problem in a case with a lot of ajax repaints.
> You can reproduce the problem with Wicket 1.3.3 easily, for example by 
> putting the log4j.logger.org.apache.wicket.markup.MarkupCache=DEBUG setting 
> in log4j.properties and running Wicket examples in deployment mode. I added 
> several items to the Ajax todo list and this appeared in console repeatedly
> DEBUG - MarkupCache                - Load markup: 
> cacheKey=org.apache.wicket.examples.ajax.builtin.TodoList$AddItemsContaineren_UShtml
> DEBUG - MarkupCache                - Markup not found: 
> org.apache.wicket.examples.ajax.builtin.TodoList$AddItemsContaineren_UShtml
> This is caused by the bug that in MarkupCache, the unfound markup information 
> is stored only in markupCache and not in markupKeyCache. I fixed this in the 
> naïve way but we should really refactor the cache handling so that it does 
> not rely on the same calls being duplicated to markupCache and markupKeyCache 
> .

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