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 "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2015/03/19 11:55:38 UTC
[jira] [Resolved] (OAK-1666) FileDataStore inUse map causes
contention in concurrent env
[ https://issues.apache.org/jira/browse/OAK-1666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Mehrotra resolved OAK-1666.
----------------------------------
Resolution: Fixed
Fix Version/s: (was: 1.2)
1.1.8
Considering this as fixed for now. Workaround done might not be required but does not harm either. We can reconsider it later when we bring in {{FileDataStore}} in the Oak
> 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
> Labels: concurrency
> Fix For: 1.1.8
>
>
> 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.3.4#6332)