[jboss-jira] [JBoss JIRA] Commented: (JBCOMMON-117) Race-condition leads to IllegalStateException Cache list entries number (x) > than the maximum allowed (x-1)

Rico Neubauer (JIRA) jira-events at lists.jboss.org
Fri May 6 04:46:18 EDT 2011


    [ https://issues.jboss.org/browse/JBCOMMON-117?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12600268#comment-12600268 ] 

Rico Neubauer commented on JBCOMMON-117:
----------------------------------------

Come on - anyone out there? ;)

> Race-condition leads to IllegalStateException Cache list entries number (x) > than the maximum allowed (x-1)
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: JBCOMMON-117
>                 URL: https://issues.jboss.org/browse/JBCOMMON-117
>             Project: JBoss Common
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: common-core (2.x)
>    Affects Versions:  2.2.17.GA, 2.2.18.GA 
>            Reporter: Rico Neubauer
>         Attachments: JBCOMMON-117.diff
>
>
> org.jboss.util.LRUCachePolicy takes care of a cache with a maxCapacity. Unfortunately the modifications of the count of entries is not thread-safe and might lead to the situation that the cache holds more than maxCapacity entries. This can only be seen rarely under heavy load on SMP machines; so far the count reached at most maxCapacity+1, but it's imaginable it could go beyond.
> One possibility is to fix the modifications of count, which should preferably NOT introduce synchronizations.
> Another simpler approach is to not throw the exception in case of the cache already having crossed the limit (which itself does not error-out), but behave nicely, since there are no real implications and the limit is not considered to be needed that strict imho.
> I will attach a proposed patch, showing the problem and using the latter option to fix it.

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


More information about the jboss-jira mailing list