[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