You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2015/07/22 12:25:05 UTC

[jira] [Updated] (OAK-3130) ReferenceEditor may not enforce referential integrity

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

Marcel Reutegger updated OAK-3130:
----------------------------------
    Description: 
VersionHistory.removeVersion() allows to remove a version of a checked in node still referencing that version. This results in a dangling base version.

This is caused by a more general issue in the ReferenceEditor, which does not enforce referential integrity in some cases.

  was:VersionHistory.removeVersion() allows to remove a version of a checked in node still referencing that version. This results in a dangling base version.

        Summary: ReferenceEditor may not enforce referential integrity  (was: VersionHistory.removeVersion() succeeds even if version is still referenced)

Turns out this is actually a more general issue with the ReferenceEditor. Updated the title of this issue accordingly.

Added more tests to trunk: http://svn.apache.org/r1692250

As can be seen from the test, the ReferenceEditor fails to enforce referential integrity when a referenceable node is removed together with a reference pointing to it and there are other existing references still pointing to the referenceable node.

> ReferenceEditor may not enforce referential integrity
> -----------------------------------------------------
>
>                 Key: OAK-3130
>                 URL: https://issues.apache.org/jira/browse/OAK-3130
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: jcr
>    Affects Versions: 1.2.3, 1.3.3, 1.0.17
>            Reporter: Marcel Reutegger
>            Assignee: Marcel Reutegger
>
> VersionHistory.removeVersion() allows to remove a version of a checked in node still referencing that version. This results in a dangling base version.
> This is caused by a more general issue in the ReferenceEditor, which does not enforce referential integrity in some cases.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)