[
https://issues.apache.org/jira/browse/JCRVLT-598?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17552705#comment-17552705
]
Tobias Bocanegra commented on JCRVLT-598:
-----------------------------------------
In general, we don't support updating ref. nodes at different locations, since
it's usually not what the user expects.
but if the node has the same parent, it was probably just renamed, and then
it's reused.
(I think this was the reasoning)
> need IdConflictPolicy compatible with 3.5.0 behavior
> ----------------------------------------------------
>
> Key: JCRVLT-598
> URL: https://issues.apache.org/jira/browse/JCRVLT-598
> Project: Jackrabbit FileVault
> Issue Type: Sub-task
> Components: vlt
> Affects Versions: 3.5.8
> Reporter: Julian Reschke
> Assignee: Konrad Windszus
> Priority: Major
> Fix For: 3.6.2
>
> Attachments: test-duplicate-referencable-on-child-element-only.zip,
> test-referenceable.zip
>
>
> Currently, according to the documentation
> ([https://jackrabbit.apache.org/filevault/referenceablenodes.html]),
> "IdConflictPolicy.FORCE_REMOVE_CONFLICTING_ID" is supposed to behave as 3.5.0
> did.
> My tests show however that in 3.5.0, when importing a package with two nodes
> with conflicting UUIDs, both nodes were imported (and one of the UUIDs
> changed).
> Update: It turned out that this is only the conflict handling for non-sibling
> nodes, for sibling nodes the behaviour depends on whether the existing
> conflicting node is contained in the filter or not. If it is contained the
> to-be imported node just replaced the conflicting node, if it is not
> contained, the to-be imported node is just skipped!
> From that point of view, CREATE_NEW_ID seems to be closer (but that one
> assigns new UUIDs to *both* nodes).
> -Proposal: adjust CREATE_NEW_ID behavior to keep assigning a new UUID only
> when needed (thus preserving it for one of the nodes), and document *that*
> mode as compatible to 3.5.0.-
> Updated Proposal: Create new IdConflictPolicy.LEGACY which removes
> conflicting nodes in case they are siblings (i.e. share the same parent
> node), otherwise will create a new ID for the to be imported referencable node
--
This message was sent by Atlassian Jira
(v8.20.7#820007)