jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tomek Dabrowski (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-1979) Deadlock on concurrent read & transactional write operations
Date Wed, 25 Feb 2009 15:19:02 GMT

    [ https://issues.apache.org/jira/browse/JCR-1979?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12676677#action_12676677
] 

Tomek Dabrowski commented on JCR-1979:
--------------------------------------

I forgot to add that there few more threads waiting for readLock (session login & logout
operations). Here are the related thread dumps:

"http-8080-40" daemon prio=10 tid=0x0892e400 nid=0x6ddb in Object.wait() [0x40ed8000..0x40ed9fc0]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x5bec5790> (a EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock)
        at java.lang.Object.wait(Object.java:485)
        at EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock.acquire(Unknown
Source)
        - locked <0x5bec5790> (a EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock)
        at org.apache.jackrabbit.core.state.DefaultISMLocking$ReadLockImpl.<init>(DefaultISMLocking.java:84)
        at org.apache.jackrabbit.core.state.DefaultISMLocking$ReadLockImpl.<init>(DefaultISMLocking.java:78)
        at org.apache.jackrabbit.core.state.DefaultISMLocking.acquireReadLock(DefaultISMLocking.java:44)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.acquireReadLock(SharedItemStateManager.java:1405)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.getItemState(SharedItemStateManager.java:253)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.getNodeState(LocalItemStateManager.java:93)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.getItemState(LocalItemStateManager.java:158)
        - locked <0xb30f9538> (a org.apache.jackrabbit.core.state.XAItemStateManager)
        at org.apache.jackrabbit.core.state.XAItemStateManager.getItemState(XAItemStateManager.java:253)
        at org.apache.jackrabbit.core.version.XAVersionManager.<init>(XAVersionManager.java:107)
        at org.apache.jackrabbit.core.XASessionImpl.createVersionManager(XASessionImpl.java:168)
        at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:281)
        at org.apache.jackrabbit.core.SessionImpl.<init>(SessionImpl.java:249)
        at org.apache.jackrabbit.core.XASessionImpl.<init>(XASessionImpl.java:98)
        at org.apache.jackrabbit.core.RepositoryImpl.createSessionInstance(RepositoryImpl.java:1497)
        at org.apache.jackrabbit.core.RepositoryImpl.createSession(RepositoryImpl.java:984)
        at org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1399)

"http-8080-38" daemon prio=10 tid=0x0842bc00 nid=0x6dd6 in Object.wait() [0x407e3000..0x407e4140]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x62e90210> (a EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock)
        at java.lang.Object.wait(Object.java:485)
        at EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock.acquire(Unknown
Source)
        - locked <0x62e90210> (a EDU.oswego.cs.dl.util.concurrent.WriterPreferenceReadWriteLock$ReaderLock)
        at org.apache.jackrabbit.core.state.DefaultISMLocking$ReadLockImpl.<init>(DefaultISMLocking.java:84)
        at org.apache.jackrabbit.core.state.DefaultISMLocking$ReadLockImpl.<init>(DefaultISMLocking.java:78)
        at org.apache.jackrabbit.core.state.DefaultISMLocking.acquireReadLock(DefaultISMLocking.java:44)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.acquireReadLock(SharedItemStateManager.java:1405)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.hasItemState(SharedItemStateManager.java:286)
        at org.apache.jackrabbit.core.state.XAItemStateManager.hasItemState(XAItemStateManager.java:295)
        at org.apache.jackrabbit.core.CachingHierarchyManager.stateDiscarded(CachingHierarchyManager.java:350)
        at org.apache.jackrabbit.core.state.StateChangeDispatcher.notifyStateDiscarded(StateChangeDispatcher.java:107)
        at org.apache.jackrabbit.core.state.LocalItemStateManager.dispose(LocalItemStateManager.java:353)
        at org.apache.jackrabbit.core.state.SessionItemStateManager.dispose(SessionItemStateManager.java:323)
        at org.apache.jackrabbit.core.SessionImpl.logout(SessionImpl.java:1148)
        - locked <0x6fa5b8d0> (a org.apache.jackrabbit.core.XASessionImpl)
        at org.apache.jackrabbit.core.XASessionImpl.logout(XASessionImpl.java:403)

> Deadlock  on concurrent read & transactional write operations
> -------------------------------------------------------------
>
>                 Key: JCR-1979
>                 URL: https://issues.apache.org/jira/browse/JCR-1979
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 1.5.0
>            Reporter: Przemo Pakulski
>            Assignee: Jukka Zitting
>             Fix For: 1.5.3
>
>
> Isuue has been introduced by resolving JCR-1755 (Transaction-safe versioning). This fixed
changed sequence of commits, but at the same time order of acquiring locks has been disturbed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message