You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Tobias Bocanegra (JIRA)" <ji...@apache.org> on 2013/12/18 02:02:26 UTC
[jira] [Updated] (SLING-2881) [I18N][Performance]
JcrResourceBundleProvider clears the cache on mix:language changes
[ https://issues.apache.org/jira/browse/SLING-2881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tobias Bocanegra updated SLING-2881:
------------------------------------
Attachment: sling-2881.r1551665.patch
proposed patch that implements alex's suggestion.
however, it might be better to not go this way and implement the new dictionary approach as discussed on the list: http://www.mail-archive.com/dev@sling.apache.org/msg25686.html
> [I18N][Performance] JcrResourceBundleProvider clears the cache on mix:language changes
> --------------------------------------------------------------------------------------
>
> Key: SLING-2881
> URL: https://issues.apache.org/jira/browse/SLING-2881
> Project: Sling
> Issue Type: Bug
> Components: Extensions
> Affects Versions: i18n 2.2.4
> Environment: CQ5.6
> Reporter: Rob Ryan
> Labels: performance
> Attachments: sling-2881.r1551665.patch
>
>
> Performance of an appplication using Sling i18n JcrResourceBundleProvider suffers drastically if nodes with mixin type mix:language are modified frequently.
> The reason for the performance degradation is that JcrResourceBundleProvider registers a JCR event listener for node types: mix:language and sling:Message. It then clears the i18n resource bundle cache whenever a node with these types appears in an event.
> The JCR 2.0 spec indicates applications should use a mix:language type as the standard way to provide a property specifying the natural language which the content of a node is expressed.
> Therefore clearing the resource bundle cache on a change to *any* node with a mix:language type is inappropriately broad.
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)