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 Mon, 19 Apr 2010 09:42:51 GMT

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

Stephan Huttenhuis updated JCR-2598:

    Attachment: GXWMF-754-II.patch

I performed a small performance test using the attached unit test. I measured the System.currentTimeMillis()
before and after a call to validateHierarchy. My test machine has the following specs: Windows
XP Pro SP3 / Intel Core2 CPU 6300 @1.86GHz / 3 GB RAM.

The unit test has the following parameters:
iterations : amount of test runs
thread size: amount of threads during a run
run size   : amount of session saves per thread
action size: actions of a thread per session save

The consistency check has the following performance impact per session save:
iterations/thread size/run size/action size: performance impact
1/5/100/100:   0-16 ms (5 concurrent threads that each do 100 session saves with 100 operations)
1/5/100/1000:  0-63 ms

1/5/10/1000:   0-16 ms
1/5/10/10000 : 0-156 ms
1/5/10/100000: 0-219 ms

I have added a new patch which uses a Java property to enabled to checks (default is no checks).
IMHO the performance impact is reasonably small and this combined with a Java property which
defaults to false I think this is a good addition.

> 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: 1.6.1, 2.0.0
>            Reporter: Stephan Huttenhuis
>         Attachments: ConcurrencyTest3.java, GXWMF-754-II.patch, JCR-2598.patch, 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