[
https://issues.apache.org/jira/browse/JCR-2057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jukka Zitting updated JCR-2057:
-------------------------------
Fix Version/s: (was: 1.6.0)
1.5.5
Merged to the 1.5 branch in revision 767069.
> When creating multiple repository instances pointing to the same home,
> opening a second session will remove the .lock file
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: JCR-2057
> URL: https://issues.apache.org/jira/browse/JCR-2057
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-core
> Affects Versions: core 1.4.7, 1.5.3
> Environment: Ubuntu Intrepid
> Reporter: Sébastien Launay
> Fix For: 1.5.5
>
> Attachments: JCR-2057-2009-04-07.zip
>
>
> The following test case can be used to reproduce the bug:
> Repository repo1 = new TransientRepository(repoConfig);
> Session session1_1 = repo1.login(...);
> Session session2_2 = repo1.login(...);
> Repository repo2 = new TransientRepository(repoConfig); // Will not fail
> (expected)
> Session session2_1 = repo2.login(...); // Will fail with
> javax.jcr.RepositoryException: The repository home /tmp/_repository appears
> to be already locked by the current process (expected)
> Session session2_2 = repo2.login(...); // Will work!
> Repository repo3 = new TransientRepository(repoConfig); // Will not fail
> either (expected)
> Session session3_1 = repo3.login(...); // Will fail with
> javax.jcr.RepositoryException: The repository home /tmp/_repository appears
> to be already locked by the current process (expected)
> Session session3_2 = repo3.login(...); // Will fail with
> javax.jcr.RepositoryException: Directory was previously created with a
> different LockFactory instance
> Open the first session in repo2 will fails but will also remove the .lock
> file, thus the second
> session will succeed and may corrupt the repository because there are
> multiple session
> opened from multiple repository.
> The same behaviour occurs for repo3, the .lock file is removed but it is a
> slightly different case
> as a new exception will be thrown while creating the Lucene index.
> This is a clearly a twisted case as repositories pointing to the same home
> must not be created
> simultaneously but i think that it must be more robust to prevent data
> corruption.
> I reproduce the bug on JR 1.4.7 and 1.5.3 but i think it affects at least all
> versions of JR < 1.5.3.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.