jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (JCR-2473) Cloning a tree containing shareable nodes into another workspace throws ItemExistsException
Date Fri, 23 Sep 2011 14:40:27 GMT

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

Jukka Zitting updated JCR-2473:

    Fix Version/s: 2.1.0

> Cloning a tree containing shareable nodes into another workspace throws ItemExistsException
> -------------------------------------------------------------------------------------------
>                 Key: JCR-2473
>                 URL: https://issues.apache.org/jira/browse/JCR-2473
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: 2.0-beta6
>            Reporter: Thomas Draier
>            Assignee: Dominique Pfister
>             Fix For: 2.1.0
> There's a problem when trying to clone a tree in another workspace, when this tree contains
shareable nodes.
> Let ws1 be one workspace, which contains one node A. This node has two sub-nodes B and
C. B and C share a shareable sub-node D :
> A 
> |   \
> B  C
> |    |
> D  D
> Let ws2 be a second workspace. Then calling ws2.clone("ws1" , "/A" , "/A" , false) throws
an ItemExistsException ( copyNodeState line 1628 ) . This is done when the copyNodeState is
checking if the nodeId is already present in the workspace - which is the case when copying
the second instance of the shareable node. I can't find in the specification something about
this case - but it would be logical to add a share to the node when coming across this situation
- at least in the CLONE ( and probable COPY too ) cases. I don't know what would be expected
in the CLONE_REMOVE_EXISTING case - we might not want to remove the node if it's shareable,
and also add a share here.
> I fixed the issue by handling the case the node is shareable in the COPY and CLONE cases
of copyNodeState - you'll find attached the corresponding patch. Do you think this solution
is ok ?

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message