[
https://issues.apache.org/jira/browse/SLING-4307?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14282556#comment-14282556
]
Radu Cotescu commented on SLING-4307:
-------------------------------------
The streams are read twice:
# once in
{{org.apache.sling.jcr.resource.internal.helper.JcrPropertyMapCacheEntry#JcrPropertyMapCacheEntry(java.lang.Object,
javax.jcr.Node)}}
# the second time in
{{org.apache.sling.jcr.resource.internal.JcrModifiableValueMap#put}}, due to
this line:
{noformat}
node.setProperty(name, entry.convertToType(Value.class, node,
dynamicClassLoader));
{noformat}
> Avoid caching JCR property values
> ---------------------------------
>
> Key: SLING-4307
> URL: https://issues.apache.org/jira/browse/SLING-4307
> Project: Sling
> Issue Type: Improvement
> Components: JCR
> Reporter: Carsten Ziegeler
> Assignee: Bertrand Delacretaz
> Fix For: JCR Resource 2.4.0
>
> Attachments: SLING-4307_stream_test.patch
>
>
> The support for ValueMap is currently caching the JCR Value objects and also
> the JCR Property object.
> If the value map object is held, this might prevent garbage collection within
> Oak as the value object holds a reference to the revision.
> We should check whether caching is needed at all or if for example we could
> just cache the value itself but not the JCR Value object
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)