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)