[
https://issues.apache.org/jira/browse/JCRVLT-767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17872019#comment-17872019
]
Julian Reschke commented on JCRVLT-767:
---------------------------------------
This is a bit tricky to change: in the "other" case ("else"), we set the new
primary type and then re-add mixins. I tried setting jcr:uuid (when present)
before adding mix:referenceable. That works for Oak, but fails for Jackrabbit.
> vlt: potential incorrect identifier comparison
> ----------------------------------------------
>
> Key: JCRVLT-767
> URL: https://issues.apache.org/jira/browse/JCRVLT-767
> Project: Jackrabbit FileVault
> Issue Type: Bug
> Components: vlt
> Reporter: Julian Reschke
> Priority: Minor
>
> In
> https://github.com/apache/jackrabbit-filevault/blob/931ceef98513167af3218b773d9213e123a2f52d/vault-core/src/main/java/org/apache/jackrabbit/vault/fs/impl/io/DocViewImporter.java#L993-L1007
> {noformat}
> if (identifier.isPresent() &&
> !node.getIdentifier().equals(identifier.get()) &&
> !"rep:root".equals(ni.getPrimaryType().orElse(""))) {
> long startTime = System.currentTimeMillis();
> String previousIdentifier = node.getIdentifier();
> log.debug("Node stashing for {} starting, existing identifier:
> {}, new identifier: {}, import mode: {}",
> node.getPath(), previousIdentifier, identifier.get(),
> importMode);
> {noformat}
> However, Node.getIdentifer() will always be non-null - even for nodes without
> mix:referenceable.
> This means that we go into stashing although we don't have to.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)