Joerg Hoh created JCRVLT-826:
--------------------------------
Summary: Redundant check for protected properties in Vault?
Key: JCRVLT-826
URL: https://issues.apache.org/jira/browse/JCRVLT-826
Project: Jackrabbit FileVault
Issue Type: Task
Affects Versions: 4.1.4
Reporter: Joerg Hoh
On import filevault checks every property that it's not protected. This check
can be quite expensive, as it needs to load the nodetype definition etc.
{noformat}
at
org.apache.jackrabbit.vault.util.EffectiveNodeType.getApplicablePropertyDefinition(EffectiveNodeType.java:112)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter.isPropertyProtected(DocViewImporter.java:1254)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter.lambda$removeProtectedProperties$6(DocViewImporter.java:1228)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter$$Lambda/0x000000080198c220.test(Unknown
Source)
at
java.util.stream.ReferencePipeline$2$1.accept([email protected]/ReferencePipeline.java:178)
at
java.util.Iterator.forEachRemaining([email protected]/Iterator.java:133)
at
java.util.Spliterators$IteratorSpliterator.forEachRemaining([email protected]/Spliterators.java:1939)
at
java.util.stream.AbstractPipeline.copyInto([email protected]/AbstractPipeline.java:509)
at
java.util.stream.AbstractPipeline.wrapAndCopyInto([email protected]/AbstractPipeline.java:499)
at
java.util.stream.ReduceOps$ReduceOp.evaluateSequential([email protected]/ReduceOps.java:921)
at
java.util.stream.AbstractPipeline.evaluate([email protected]/AbstractPipeline.java:234)
at
java.util.stream.ReferencePipeline.collect([email protected]/ReferencePipeline.java:682)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter.removeProtectedProperties(DocViewImporter.java:1242)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter.updateExistingNode(DocViewImporter.java:1082)
at
org.apache.jackrabbit.vault.fs.impl.io.DocViewImporter.addNode(DocViewImporter.java:956)
{noformat}
But at the same time Oak also does the same checks when properties are actually
set.
We should check if it makes sense to rely only on Oak for these checks, and let
FileVault handle the exceptions caused by trying to set protected properties.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)