jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chetan Mehrotra (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-1666) FileDataStore inUse map causes contention in concurrent env
Date Mon, 07 Apr 2014 08:34:18 GMT

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

Chetan Mehrotra commented on OAK-1666:
--------------------------------------

Then it looks like more analysis is required. Would have close look at the actual system to
identify the bottleneck.

btw using a map with 100k entries (instead of a single entry map) brings down the count to
3 million. Still quite high but size of does effect. Would a weakhasmap would have 100k (or
more entries at a time) I am not sure currently.

> FileDataStore inUse map causes contention in concurrent env
> -----------------------------------------------------------
>
>                 Key: OAK-1666
>                 URL: https://issues.apache.org/jira/browse/OAK-1666
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>            Priority: Minor
>             Fix For: 1.1
>
>
> JR2 FileDataStore#inUseMap [1] is currently a synchronized map and that at times causes
contention concurrent env. This map is used for supporting the Blob GC logic for JR2. 
> With Oak this map content is not used. As a fix we can either
> # Set inUseMap to a Guava Cache Map which has weak keys and value
> # Set inUseMap to a no op map where all put calls are ignored
> # Modify FDS to disable use of inUseMap or make {{usesIdentifier}} protected
> #3 would be a proper fix and #2 can be used as temp workaround untill FDS gets fixed
> [1] https://github.com/apache/jackrabbit/blob/trunk/jackrabbit-data/src/main/java/org/apache/jackrabbit/core/data/FileDataStore.java#L118



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message