jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Laurent Prevosto (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-2679) Lock Problem when accessing JCR
Date Thu, 12 Aug 2010 18:10:19 GMT

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

Laurent Prevosto commented on JCR-2679:
---------------------------------------

Sorry for being talkative but i am trying not to get fired for choosing JCR.
Looking more closely, it still looks like we experinence PersistenManager lock when the XA
transaction rollbacks.

Below we see that persistentManager tries to reconnect but for some reason, JBOSS won't let
him do that...
Maybe we have a configuration problem but we can't find out which one...

regards...


2010-08-12 13:19:28,341 ERROR [org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager]
: could not execute statement, reason: Trans
action TransactionImple < ac, BasicAction: a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING
> cannot proceed STATUS_ROLLING_BACK; - nested throwab
le: (javax.transaction.RollbackException: Transaction TransactionImple < ac, BasicAction:
a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING > canno
t proceed STATUS_ROLLING_BACK), state/code: null/0
2010-08-12 13:19:28,341 ERROR [org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager]
: failed to close connection, reason: Transa
ction TransactionImple < ac, BasicAction: a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING
> cannot proceed STATUS_ROLLING_BACK; - nested throwabl
e: (javax.transaction.RollbackException: Transaction TransactionImple < ac, BasicAction:
a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING > cannot
 proceed STATUS_ROLLING_BACK), state/code: null/0
2010-08-12 13:19:28,842 WARN  [org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager]
: Could not connect; driver: javax.naming.In
itialContext url: java:/jdbc/sadirah user: null error: org.jboss.util.NestedSQLException:
Transaction is not active: tx=TransactionImple < ac, BasicActio
n: a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING >; - nested throwable: (javax.resource.ResourceException:
Transaction is not active: tx=Transa
ctionImple < ac, BasicAction: a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORTING >)
org.jboss.util.NestedSQLException: Transaction is not active: tx=TransactionImple < ac,
BasicAction: a1d28e3:e216:4c63d732:85b status: ActionStatus.ABORT
ING >; - nested throwable: (javax.resource.ResourceException: Transaction is not active:
tx=TransactionImple < ac, BasicAction: a1d28e3:e216:4c63d732:85b
 status: ActionStatus.ABORTING >)
        at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:95)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionFactory.getConnection(ConnectionFactory.java:67)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.setupConnection(ConnectionRecoveryManager.java:334)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.reestablishConnection(ConnectionRecoveryManager.java:409)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.getConnection(ConnectionRecoveryManager.java:159)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:293)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:261)
        at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:239)
        at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1185)
        at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1143)
        at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.getBundle(AbstractBundlePersistenceManager.java:680)
        at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.exists(AbstractBundlePersistenceManager.java:474)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.hasNonVirtualItemState(SharedItemStateManager.java:1409)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.hasItemState(SharedItemStateManager.java:297)
        at org.apache.jackrabbit.core.CachingHierarchyManager.stateDiscarded(CachingHierarchyManager.java:350)
        at org.apache.jackrabbit.core.state.StateChangeDispatcher.notifyStateDiscarded(StateChangeDispatcher.java:141)
        at org.apache.jackrabbit.core.state.SharedItemStateManager.stateDiscarded(SharedItemStateManager.java:428)
        at org.apache.jackrabbit.core.state.ItemState.notifyStateDiscarded(ItemState.java:226)
        at org.apache.jackrabbit.core.state.ItemState.discard(ItemState.java:370)
        at org.apache.jackrabbit.core.state.SharedItemStateManager$Update.cancel(SharedItemStateManager.java:824)
        at org.apache.jackrabbit.core.state.XAItemStateManager.rollback(XAItemStateManager.java:197)
        at org.apache.jackrabbit.core.TransactionContext.rollback(TransactionContext.java:242)
        at org.apache.jackrabbit.core.XASessionImpl.rollback(XASessionImpl.java:359)
        at org.apache.jackrabbit.jca.TransactionBoundXAResource.rollback(TransactionBoundXAResource.java:76)
        at org.jboss.resource.connectionmanager.xa.JcaXAResourceWrapper.rollback(JcaXAResourceWrapper.java:103)
        at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelAbort(XAResourceRecord.java:376)
        at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:3222)


> Lock Problem when accessing JCR
> -------------------------------
>
>                 Key: JCR-2679
>                 URL: https://issues.apache.org/jira/browse/JCR-2679
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-jca, transactions
>    Affects Versions: 1.5.3, 1.6.2
>         Environment: JBOSS 4.2.3 on jre 1.5.0_15 with XA transactions and Oracle10g
>            Reporter: Laurent Prevosto
>         Attachments: repository-prod.xml, thread_dump.txt, workspace.xml
>
>
> Hi,
> We're using Jackrabbit 1.6.2 as an internal CMS in an application we developped.
> It runs in JBOSS 4.2.3 on jre 1.5.0_15 with XA transactions and Oracle10g
> We have about 15 users adding / deleting files in the repository.
> 30 others just do read only CMS access and other stuff.
> Things work fine except that sometimes, suddenly everything gets stuck and all we have
left is those kind of errors :
> [org.apache.jackrabbit.core.query.lucene.NodeIteratorImpl] : Exception retrieving Node
with UUID : XXXXXXX-XXX-etc: javax.jcr.ItemNotFoundException: XXXXXXX-XXX-etc
> All our JCR connections are now dead. If we restart JBOSS, things get back to normal,
until the next crash.
> It looks like the bug usually happens when this kind of sequence takes place (though
that may not be the only one) :
> XA transaction begins
> filenode1 gets deleted
> filenode2 gets deleted
> other oracle stuff takes place... and fails
> XA rollbacks.
> => JCR is dead.
> At that point, "touching" the datasource has it reinitialised by JBOSS but unfortunately
the lock is still there : JBOSS has to be restarted.

-- 
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