You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Konrad Windszus (Jira)" <ji...@apache.org> on 2020/01/07 12:03:00 UTC

[jira] [Commented] (JCRVLT-255) ImportModes act on file serialization level not on node level

    [ https://issues.apache.org/jira/browse/JCRVLT-255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17009660#comment-17009660 ] 

Konrad Windszus commented on JCRVLT-255:
----------------------------------------

I added a failing test case in https://github.com/kwin/jackrabbit-filevault/tree/bugfix/JCRVLT-255-importmodes-for-docview. [~tripod] Could  you check that the test case is correct?

The wording "Existing content is replaced, new content is added and none is deleted." is a bit fuzzy to me, as it doesn't explicitly mention nodes and properties. I translate this to: "New properties are added, existing properties are updated, none are deleted and no existing nodes are deleted (but new child nodes are added)". Is this understanding correct?


> ImportModes act on file serialization level not on node level
> -------------------------------------------------------------
>
>                 Key: JCRVLT-255
>                 URL: https://issues.apache.org/jira/browse/JCRVLT-255
>             Project: Jackrabbit FileVault
>          Issue Type: Bug
>          Components: Packaging
>            Reporter: Konrad Windszus
>            Priority: Major
>             Fix For: 3.4.2
>
>
> When reading the docs at http://jackrabbit.apache.org/filevault/importmode.html I would assume that for {{ImportMode.MERGE}} the merging happens on node level (i.e. indepent of the actual serialization format). Unfortunately this is not the case: If I have a serialized docview {{.content.xml}} file covering the current node and three levels below the merging is not done if the entry node level does already exist in the repository, although not all child nodes are in the repository yet.
> This is due to the guard in https://github.com/apache/jackrabbit-filevault/blob/8b2fedaf329b3bf4a049e41563c0bc83487406f7/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/FileArtifactHandler.java#L226. which prevents the DocViewSAXImporter from kicking in, although there are indeed subnodes in the {{.content.xml}} which are not yet in the repository.
> Please either fix this behaviour of make the documentation at http://jackrabbit.apache.org/filevault/importmode.html clearer because it explicitly says there:
> {quote}
> It is important to note, that the import mode always operates on entire nodes and subtrees...
> {quote}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)