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 "Michael Dürig (JIRA)" <ji...@apache.org> on 2015/08/17 13:56:45 UTC

[jira] [Commented] (OAK-3055) Improve segment cache in SegmentTracker

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

Michael Dürig commented on OAK-3055:
------------------------------------

OAK-3095 needs to be merged first should we decide to merge this.

> Improve segment cache in SegmentTracker
> ---------------------------------------
>
>                 Key: OAK-3055
>                 URL: https://issues.apache.org/jira/browse/OAK-3055
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segmentmk
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>              Labels: doc-impacting, resilience, scalability
>             Fix For: 1.3.3
>
>         Attachments: OAK-3055.patch
>
>
> The hand crafted segment cache in {{SegmentTracker}} is prone to lock contentions in concurrent access scenarios. As {{SegmentNodeStore#merge}} might also end up acquiring this lock while holding the commit semaphore the situation can easily lead to many threads being blocked on the commit semaphore. The {{SegmentTracker}} cache doesn't differentiate between read and write access, which means that reader threads can block writer threads. 



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