[
https://issues.apache.org/jira/browse/JCR-3902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14708054#comment-14708054
]
Unico Hommes edited comment on JCR-3902 at 8/22/15 2:57 PM:
------------------------------------------------------------
Fix consists of using the same strategy to find the best match between the old
property definition and a new property definition as was already in place for
child node definitions (as per JCR-3840). In fact, the code has only been
refactored in order to avoid code duplication.
was (Author: [email protected]):
Fix consists of using the same strategy to find the best match between the old
property definition and a new property definition as was already in place for
child node definitions (as per JCR-3840).
> NodeTypeDefDiff incorrectly handles multiple residual property definitions
> --------------------------------------------------------------------------
>
> Key: JCR-3902
> URL: https://issues.apache.org/jira/browse/JCR-3902
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Reporter: Unico Hommes
> Assignee: Unico Hommes
> Fix For: 2.10.3, 2.11.1
>
>
> The following change in node type definition should succeed:
> old.cnd:
> {code}
> [my:nodetype]
> - * (string)
> {code}
> new.cnd:
> {code}
> [my:nodetype]
> - * (string)
> - * (boolean)
> {code}
> But this fails. The reason is that property definitions are matched up using
> the name (in the case of residual property definitions *) as the key. In this
> case * (string) is matched up with * (boolean) and a change of property type
> is illegal, whereas it should have matched up with * (string) in which case
> there is no change in property type and in which case * (boolean) is a new
> property definition which is legal to add.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)