You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2014/06/10 10:49:01 UTC

[jira] [Updated] (JCR-3783) Deadlock due to IOException in WorkspaceUpdateChannel.updatePrepared()

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

Marcel Reutegger updated JCR-3783:
----------------------------------

    Fix Version/s: 2.8.1
                   2.6.6

Merged fix into 2.8 branch: http://svn.apache.org/r1601571 and 2.6 branch: http://svn.apache.org/r1601572

> Deadlock due to IOException in WorkspaceUpdateChannel.updatePrepared()
> ----------------------------------------------------------------------
>
>                 Key: JCR-3783
>                 URL: https://issues.apache.org/jira/browse/JCR-3783
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.6.2
>         Environment: Jackrabbit 2.6.2, but may also occur with previous versions.
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>             Fix For: 2.6.6, 2.8.1, 2.9
>
>
> This is similar to JCR-3417, but for the method WorkspaceUpdateChannel.updatePrepared(). The implementation catches an IOException releases the lock on the journal and does not re-throw the exception as a JournalException. The current thread will therefore continue with the save call. A deadlock may occur if another thread acquires the journal lock in the meantime, tries to acquire the write lock of the SharedItemStateManager (owned by the initial thread) and the initial thread later tries to access the journal.



--
This message was sent by Atlassian JIRA
(v6.2#6252)