jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Julian Reschke (JIRA)" <j...@apache.org>
Subject [jira] [Created] (JCR-3069) add optional consistency checks to test suite
Date Tue, 13 Sep 2011 11:59:09 GMT
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

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.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message