[
https://issues.apache.org/jira/browse/JCR-3069?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13122173#comment-13122173
]
Alex Parvulescu commented on JCR-3069:
--------------------------------------
is the patch complete or is it relying on other issues? (existing code)
I tried applying it, and I don't have ConsistencyChecker, ReportItem.
also you have an unused import
(com.sun.corba.se.impl.protocol.giopmsgheaders.Message) on
BundleDbPersistenceManager ;)
I think org.apache.jackrabbit.core.persistence.AutoFixCorruptNode would also be
a candidate for unit testing the consistencyCheck.
> add optional consistency checks to test suite
> ---------------------------------------------
>
> Key: JCR-3069
> URL: https://issues.apache.org/jira/browse/JCR-3069
> Project: Jackrabbit Content Repository
> Issue Type: Wish
> Components: jackrabbit-core
> Reporter: Julian Reschke
> Assignee: Julian Reschke
> Attachments: JCR-3069.patch
>
>
> We know that certain sequences of calls can cause the persistent state to
> become inconsistent, such as by producing orphaned nodes.
> This usually does not manifest itself in tests failing. However, it can mean
> (silent) data loss, and become visible at a different point of time in the
> form of nodes that can be discovered using a query, but which can not compute
> their path.
> Checking the persistence layer's consistency is implementation specific. In
> Jackrabbit, there is a consistency check call on the PersistenceManager that
> we could use. It just logs a results and doesn't provide a checkable return
> value, but it would be a start.
> Proposed helper code (thx to Marcel for the proposal):
> /**
> * Runs a consistency check on the given workspace.
> *
> * @param name the name of the workspace to perform the consistency check.
> * @param repo the repository instance.
> * @throws RepositoryException if an error occurs while getting the
> * workspace with the given name.
> */
> public static void checkConsistency(String name, RepositoryImpl repo)
> throws RepositoryException {
> RepositoryImpl.WorkspaceInfo wspInfo = repo.getWorkspaceInfo(name);
> wspInfo.getPersistenceManager().checkConsistency(null, true, false);
> }
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira