jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephan Huttenhuis (JIRA)" <j...@apache.org>
Subject [jira] Updated: (JCR-2598) Saving concurrent sessions executing random operations causes a corrupt JCR
Date Fri, 09 Apr 2010 13:41:50 GMT

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

Stephan Huttenhuis updated JCR-2598:

    Status: Patch Available  (was: Open)

- Because it is difficult determine all the causes (multiple ItemStateManagers and locking)
I propose to do a final consistency check on the ChangeLog in the SharedItemStateManager and
to throw an exception if an inconsistency is detected.

- A race condition is exists when moving and deleting nodes with the same name. The index
passed to removeChildNode(Name nodeName, int index) may not be valid anymore because another
session deleted or moved another child node. Instead of using name + index use id to make
sure that the correct node is removed.

See proposed patch (based on the trunk). After the patch the repository is consistent and
only a few messages are shown (see Output after patch.txt)

> Saving concurrent sessions executing random operations causes a corrupt JCR
> ---------------------------------------------------------------------------
>                 Key: JCR-2598
>                 URL: https://issues.apache.org/jira/browse/JCR-2598
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.0.0, 1.6.1
>            Reporter: Stephan Huttenhuis
>         Attachments: org.apache.jackrabbit.core.ConcurrencyTest3.txt, Output after patch.txt,
Output before patch.txt
> Run the attached unit test. Several concurrent sessions add, move, and remove nodes.
Then the index is removed and the repository is again started. The repository is in an inconsistent
state and the index cannot be rebuild. Also a lot of exceptions occur. See (see Output before
patch.txt). Note that the unit test also suffers from the deadlock of issue http://issues.apache.org/jira/browse/JCR-2525
about half the time.

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

View raw message