jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Mueller (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (JCR-2740) On missing child node, automatically remove the entry (when a session attribute is set)
Date Tue, 30 Nov 2010 16:42:13 GMT

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

Thomas Mueller resolved JCR-2740.
---------------------------------

    Resolution: Fixed

> On missing child node, automatically remove the entry (when a session attribute is set)
> ---------------------------------------------------------------------------------------
>
>                 Key: JCR-2740
>                 URL: https://issues.apache.org/jira/browse/JCR-2740
>             Project: Jackrabbit Content Repository
>          Issue Type: New Feature
>          Components: jackrabbit-core
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>             Fix For: 2.2.0
>
>         Attachments: jcr-2740-b.patch, jcr-2740-c.patch, JCR-2740-d.patch, jcr-2740.patch
>
>
> If a node points to a non-existing child node (which is a repository inconsistency),
currently this child node is silently ignored for read operations (as far as I can tell).
However, when trying to add another child node with the same name, an exception is thrown
with a message saying a child node with this name already exists. Also, the parent node can't
be removed.
> One solution is to remove the bad child node entry, but only if the session attribute
"org.apache.jackrabbit.autoFixCorruptions" is set (so by default the repository is not changed
'secretly'):
>     SimpleCredentials cred = new SimpleCredentials(...);
>     cred.setAttribute("org.apache.jackrabbit.autoFixCorruptions", "true");
>     rep.login(cred);
> It's not a perfect solution, but it might be better than throwing an exception and basically
preventing changes.
> Another solution (not implemented) would be to rename the missing child node entry when
trying to add a child node with the same name (for example add the current date/time, or a
random digit until there is no conflict), and then continue with adding the new child node.

-- 
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