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 "Tomek Rękawek (JIRA)" <ji...@apache.org> on 2016/11/23 09:27:58 UTC

[jira] [Resolved] (OAK-5138) NodeCache.getIfPresent() may result in writing to persistent cache

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

Tomek Rękawek resolved OAK-5138.
--------------------------------
    Resolution: Fixed

> NodeCache.getIfPresent() may result in writing to persistent cache
> ------------------------------------------------------------------
>
>                 Key: OAK-5138
>                 URL: https://issues.apache.org/jira/browse/OAK-5138
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: cache, documentmk
>    Affects Versions: 1.4.10, 1.5.14
>            Reporter: Tomek Rękawek
>            Assignee: Tomek Rękawek
>            Priority: Minor
>              Labels: candidate_oak_1_2, candidate_oak_1_4
>             Fix For: 1.6, 1.5.15
>
>         Attachments: OAK-5138.patch
>
>
> The NodeCache#getIfPresent() method checks whether the requested item exists either in the memCache or the persisted, multi-generational cache.
> If the item exists in the multi-generational cache, but not in the most recent (write) generation, it's being moved (so the MultiGenerationMap.put() method is invoked).
> As a result, the NodeCache#getIfPresent() method may result in a synchronous write, even in the [asynchronous mode|OAK-4882].



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