jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig (JIRA) <j...@apache.org>
Subject [jira] [Updated] (OAK-3055) Improve segment cache in SegmentTracker
Date Tue, 07 Jul 2015 07:27:04 GMT

     [ https://issues.apache.org/jira/browse/OAK-3055?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Dürig updated OAK-3055:
-------------------------------
    Attachment: OAK-3055.patch

Tentative patch. This patch has probably the same problem as the one for OAK-3007 re. the
{{IAE}} when specifying a cache size of 0 (i.e. no chache). 

[~tmueller], WDYT?

> 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: resilience, scalability
>             Fix For: 1.3.5
>
>         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)

Mime
View raw message