[
https://issues.apache.org/jira/browse/SLING-2881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Felix Meschberger resolved SLING-2881.
--------------------------------------
Resolution: Fixed
Fix Version/s: i18n 2.2.8
Thanks for providing the patch. I have applied it in Rev. 1560925 along with
these additions:
- Completely disabled the integration test due to unavailability of the pax
test support (as well as the launchpad snapshot reference)
- Updated requirement to Java 6 due to use of Collections.newSetFromMap
> [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
> Assignee: Felix Meschberger
> Labels: performance
> Fix For: i18n 2.2.8
>
> 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.5#6160)