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

Yasuo Nakajima updated JCR-3746:
--------------------------------

    Environment: Windows Server 2008 R2  (was: Windows Server 2008 SP2)

> Disposing a workspace causes a deadlock
> ---------------------------------------
>
>                 Key: JCR-3746
>                 URL: https://issues.apache.org/jira/browse/JCR-3746
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.4.3
>         Environment: Windows Server 2008 R2
>            Reporter: Yasuo Nakajima
>
> An inappropriate use of ReentrantWriterPreferenceReadWriteLock can cause a 
> deadlock in RepositoryImpl.WorkspaceInfo.dispose().
> It tries to upgrade a read lock to write lock.
> This causes a deadlock when other threads already have been acquired the read 
> or write lock before the dispose thread acquires the write lock.  In this 
> case, the dispose thread will wait for acquiring the write lock forever 
> because it holds the read lock itself.
> This problem is described in JCR-546 and ‘dispose’ is pointed out as a 
> possible problem.
> We encountered the deadlock in our environment.
> The deadlock does not happen in default workspace because dispose is not 
> applied for it.



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

Reply via email to