[
https://issues.apache.org/jira/browse/OAK-2707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Joel Richard updated OAK-2707:
------------------------------
Attachment: OAK-2707.patch
[~anchela], in Sling the namespaces are read when you read the first property
of a resource which contains a colon. Thanks to some other changes, we could
reduce the overhead already to around 5% of the rendering time, but it would be
great if we could remove it entirely.
I have attached a patch with a namespace cache. Can you please review it? It
still contains a few todos with things I wasn't sure about.
> Performance: Consider cache for SessionImpl#getNamespacePrefixes
> ----------------------------------------------------------------
>
> Key: OAK-2707
> URL: https://issues.apache.org/jira/browse/OAK-2707
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: jcr
> Affects Versions: 1.1.7
> Reporter: Joel Richard
> Priority: Critical
> Labels: performance
> Fix For: 1.3.1
>
> Attachments: OAK-2707.patch, Screen Shot 2015-03-30 at 08.38.58.png
>
>
> Sesison#getNamespacePrefixes is heavily used in Sling (see
> org.apache.sling.jcr.resource.JcrPropertyMap#escapeKeyName) and can easily be
> called 5000-8000 times per page load.
> Therefore, it adds 10-15% page rendering overhead for Sling-based websites
> (see attachment). Would it be possible to add either a global cache or at
> least a session cache for this method?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)