Joerg Hoh created SLING-13392:
---------------------------------
Summary: Stale fallback translations after resource bundle refresh
with preloading enabled
Key: SLING-13392
URL: https://issues.apache.org/jira/browse/SLING-13392
Project: Sling
Issue Type: Task
Affects Versions: i18n 3.0.0, I18N Support 2.6.6
Reporter: Joerg Hoh
With {{preload.bundles=true}}, an individual resource bundle refresh can leave
dependent locales using stale fallback translations, even after the refresh has
completed.
For example, English defines {{checkout.label = "Checkout"}}, while {{de}} and
{{de_DE}} have no translation for that entry and inherit the English value.
After the English value changes to {{"Proceed to checkout"}} and the English
bundle is refreshed, English requests return the updated text, but German and
German-country requests can continue returning {{"Checkout"}}.
The refresh rebuilds dependent bundles before their parents. Newly created
dependent bundles therefore retain references to the previous parent instances.
Replacing the parent in the provider cache does not update these references.
*Expected behavior*
After a successful refresh, subsequent bundle lookups for affected locales
should resolve updated parent and fallback translations while preserving
locale-specific overrides.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)