You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2016/05/12 08:40:12 UTC

[jira] [Commented] (OAK-4263) LIRS cache: excessive use of notifyAll

    [ https://issues.apache.org/jira/browse/OAK-4263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15281323#comment-15281323 ] 

Thomas Mueller commented on OAK-4263:
-------------------------------------

http://svn.apache.org/r1743481 (trunk)

In a microbenchmark, I didn't see much performance improvement (41 millions operations/second vs. 40 million ops/sec before). I also didn't see notifyAll() to be a problem even without the fix. Maybe this is also related to the JVM and other factors. But I have seen notifyAll to be a bottleneck in a few full thread dumps before, so I guess the patch is fine.

> LIRS cache: excessive use of notifyAll
> --------------------------------------
>
>                 Key: OAK-4263
>                 URL: https://issues.apache.org/jira/browse/OAK-4263
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>             Fix For: 1.6
>
>
> The LIRS cache tries to avoid loading the same cache entry concurrently. To notify a possible waiting thread, it uses notifyAll. This is a relatively expensive operation, and should be avoided if possible.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)