jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "quipere (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-566) Versioning bug with restore and transactions
Date Mon, 04 May 2009 19:54:30 GMT

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

quipere commented on JCR-566:
-----------------------------

I have this same problem using jencks in tomcat6 with jackrabbit 1.5.5. Versioning icw distributed
transactions. Is there any info on resolving or workaround this problem?

> Versioning bug with restore and transactions
> --------------------------------------------
>
>                 Key: JCR-566
>                 URL: https://issues.apache.org/jira/browse/JCR-566
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core, transactions, versioning
>    Affects Versions: 1.1
>            Reporter: Florent Guillaume
>            Assignee: Tobias Bocanegra
>         Attachments: debug1.py, VersionBugReplicate.tar.gz
>
>
> This is a versioning bug in the presence of restore and transactions. It's hard to reproduce
and seems memory-layout dependent.
> At the moment I only have a jython testcase, see below. This is with a svn checkout from
today (442228).
> Basically the program does create a node and subnode and do some checkins, checkouts,
restore, modifications, in successive transactions. Transactions are managed manually using
the xaresource API, but it would be equivalent to use a UserTransaction (the sequence of xaresource
calls in the end is the same).
> The program log and stack trace is: 
> start 1
> node 36eca6a5-8e5d-46a8-897a-4b81734aaad4
> commit 1
> start 2
> commit 2
> start 3
> commit 3
> javax.transaction.xa.XAException
>         at org.apache.jackrabbit.core.TransactionContext.prepare(TransactionContext.java:138)
>         at org.apache.jackrabbit.core.XASessionImpl.prepare(XASessionImpl.java:300)
>         File "debug1.py", line 128, in doit
>         File "debug1.py", line 145, in ?
> Caused by: org.apache.jackrabbit.core.TransactionException: Unable to prepare transaction.
>         at org.apache.jackrabbit.core.state.XAItemStateManager.prepare(XAItemStateManager.java:159)
>         at org.apache.jackrabbit.core.TransactionContext.prepare(TransactionContext.java:121)
>         ... 22 more
> Caused by: org.apache.jackrabbit.core.state.StaleItemStateException: 36eca6a5-8e5d-46a8-897a-4b81734aaad4/{http://www.jcp.org/jcr/1.0}predecessors
has been modified externally
>         at org.apache.jackrabbit.core.state.SharedItemStateManager$Update.begin(SharedItemStateManager.java:546)
>         at org.apache.jackrabbit.core.state.SharedItemStateManager.beginUpdate(SharedItemStateManager.java:717)
>         at org.apache.jackrabbit.core.state.XAItemStateManager.prepare(XAItemStateManager.java:151)
>         ... 23 more
> javax.transaction.xa.XAException: javax.transaction.xa.XAException
> Note that the mentionned property (here, "jcr:predecessors") has changed when I was cutting
down on the program size to get a simpler testcase. It's not necessarily a "system" property,
and sometimes it was property of the subnode created under the main node.

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