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 "Michael Dürig (JIRA)" <ji...@apache.org> on 2013/12/19 17:12:10 UTC

[jira] [Resolved] (OAK-1298) Improve MoveDetector to also include moves from transient locations

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

Michael Dürig resolved OAK-1298.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 0.14

Fixed at http://svn.apache.org/r1552323

> Improve MoveDetector to also include moves from transient locations
> -------------------------------------------------------------------
>
>                 Key: OAK-1298
>                 URL: https://issues.apache.org/jira/browse/OAK-1298
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: core
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>             Fix For: 0.14
>
>
> The {{MoveDetector}} introduced with OAK-783 only reports moved nodes for nodes whose source location is not transient. A source location is transient if it is transiently added or a child node of a transiently moved tree. That is, it does not report moved nodes for 
> # nodes that are added and subsequently moved
> # nodes that are moved from within a subtree that has been moved before. 
> While 1. is actually desirable, 2. is a limitation in the current implementation of {{MoveDetector}}. 
> While [commenting | https://issues.apache.org/jira/browse/OAK-710?focusedCommentId=13852890&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13852890] on OAK-710 it occurred to me that we could improve {{MoveDetector}} to also cover point 2 from above. For {{MoveDetector}} the situation is actually reverse from that of {{MoveTracker}} described in that comment: it correctly handles cases like {{>/a:/b/c >/b:/d}} but does not correctly handle the dual case of {{/d:b >/b/c:a}}. This could be fixed by walking up the hierarchy to determine of a parent of a moved node has been moved and substituting the relevant part of the source path accordingly. 



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)