[ https://issues.apache.org/jira/browse/JCR-3016?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13061262#comment-13061262
]
Julian Reschke commented on JCR-3016:
-------------------------------------
So it seems the failed save() operation leaves the transient space in a state where it *can*
be saved, but the save will cause repository corruption.
Either the second save() operation on Session 2 should fail just like the first one, or alternatively
the persisted change from Session 1 would need to be merged in - but I don't believe adding
a same-named child node is something that is supposed to be mergeable.
> inconsistent repository after overlapping node add operations
> -------------------------------------------------------------
>
> Key: JCR-3016
> URL: https://issues.apache.org/jira/browse/JCR-3016
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-core
> Reporter: Julian Reschke
> Attachments: OverlappingNodeAddTest.diff
>
>
> It seems I can reproduce a sequence of operations that cause the repository to be inconsistent.
> The short version: 2 sessions add a same-named child node to the same parent folder (not
allowing same-name-siblings). Session 1's save() succeeds. Session 2's save() fails, but succeeds
on retry (!).
> After the operation, the child node created by session 1 is still present, but the parent
doesn't list it as child node anymore.
> (will add test case)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
|