You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Martijn Dashorst (JIRA)" <ji...@apache.org> on 2011/07/06 11:07:16 UTC

[jira] [Assigned] (WICKET-3874) RequestLogger#getRequests throws concurrentmodificationexceptions when used

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

Martijn Dashorst reassigned WICKET-3874:
----------------------------------------

    Assignee: Martijn Dashorst

> RequestLogger#getRequests throws concurrentmodificationexceptions when used
> ---------------------------------------------------------------------------
>
>                 Key: WICKET-3874
>                 URL: https://issues.apache.org/jira/browse/WICKET-3874
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket-core
>    Affects Versions: 1.5-RC5.1
>            Reporter: Martijn Dashorst
>            Assignee: Martijn Dashorst
>             Fix For: 1.5-RC6
>
>
> The getRequests() method of the request logger doesn't work at all. It returns a synchronized list which is wrapped in a unmodifiable list. The contents of the list is linked list, so whenever you are iterating over the unmodifiable list, the request logger is updating the underlying linked list—causing ConcurrentModificationExceptions.
> At topicus we worked around this by using a rounded buffer in the request logger instead of the linked list. This implementation brings improved statistics to the request logger, such as average request times across the monitored interval and requests per minute.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira