jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Klimetschek (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-1428) Add API for selective bundle consistency check (Jackrabbit-specific)
Date Wed, 27 Feb 2008 22:39:51 GMT

    [ https://issues.apache.org/jira/browse/JCR-1428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12573090#action_12573090
] 

Alexander Klimetschek commented on JCR-1428:
--------------------------------------------

I missed that the existing configuration-based implementation has two flags:

- consistencyCheck for enabling the basic process and
- consistencyFix for enabling fixes

If consistencyCheck is "true" and consistencyFix is "false", any inconsistencies would only
get logged, but no modification on the data will be done.

This could be done by adding a flag to all new methods or by introducing a separate checkAndFixConsistency()
set of methods. I'd prefer the first variant to minimize the number of new API methods (currently
I have 3 for WorkspaceImpl and 3 for RepositoryImpl already - checkConsistency(), checkConsistency(String[]
uuids) and checkConsistency(String[] uuids, boolean recursive)).

> Add API for selective bundle consistency check (Jackrabbit-specific)
> --------------------------------------------------------------------
>
>                 Key: JCR-1428
>                 URL: https://issues.apache.org/jira/browse/JCR-1428
>             Project: Jackrabbit
>          Issue Type: New Feature
>          Components: jackrabbit-core
>            Reporter: Alexander Klimetschek
>             Fix For: 1.3.4
>
>
> Add a jackrabbit-specific API for doing a selective consistencyCheck, ie. on single nodes.
The current entire-workspace check can be very slow if there workspace is large enough. Also
it should be easy to write a tool to invoke that feature programmatically rather than by configuration
+ restart (see below).
> Existing Implementation:
> The current bundle consistencyCheck feature is enabled by setting a bundle PM parameter
and restarting Jackrabbit, it will then run upon startup (see JCR-972 for the only issue regarding
bundle consistency check). This check looks for broken parent-child relationships, ie. it
will remove any child node entries that reference non-existing parent nodes. For non-existing
parent UUIDs and other problems in bundles it will log those.
> Outlook:
> An advanced consistencyCheck could also check for non-existing version nodes and vice-versa
(see JCR-630), but this is not the focus of this issue and could be a later addition to the
API.

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


Mime
View raw message