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 "Thomas Mueller (JIRA)" <ji...@apache.org> on 2015/03/05 16:24:38 UTC

[jira] [Resolved] (OAK-2571) Protect the persistent cache against Thread.interrupt

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

Thomas Mueller resolved OAK-2571.
---------------------------------
    Resolution: Fixed

The store and the maps are now automatically re-opened if there is a problem, up to at most 10 times in a loop. If there is still a problem, the cache is disabled (slowing down performance, but not resulting in errors). This is transparent, so the application does not get any exceptions or different behavior, except for changed performance. Re-opening the maps logs warnings.

> Protect the persistent cache against Thread.interrupt
> -----------------------------------------------------
>
>                 Key: OAK-2571
>                 URL: https://issues.apache.org/jira/browse/OAK-2571
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>             Fix For: 1.2, 1.1.8, 1.0.13
>
>
> If an application calls Thread.interrupt() on a thread that currently uses the persistent cache, then the cache file (FileChannel) is closed, which makes the operation and all further operations fail.
> The persistent cache should be protected against Thread.interrupt() in some way. It should log a warning, and then for example close itself (degrading performance), or re-open the file.



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