Skip to content

perf: L2 cache NONSTRICT + eviction guard (#24810, #24916, #24767) [2.42] - #24986

Merged
netroms merged 9 commits into
2.42from
backport/l2-eviction-guard-2.42
Sep 8, 2026
Merged

perf: L2 cache NONSTRICT + eviction guard (#24810, #24916, #24767) [2.42]#24986
netroms merged 9 commits into
2.42from
backport/l2-eviction-guard-2.42

Conversation

@netroms

@netroms netroms commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Backport of #24810, #24916, and the test classes from #24767.

#24916 is stacked on #24810. Together they switch reference-metadata L2 regions to NONSTRICT_READ_WRITE and refuse stale late putFromLoad via EvictionGuard.

2.42 still maps that metadata through hbm.xml (JPA on master), so the strategy switch is applied there. The docker runner from #24767 is omitted: 2.42 has no run-simulation.sh / compose profile. Gatling ramp classes and HibernateCacheRegionsTest are included.

AI Assisted

2.42 still maps CategoryCombo, CategoryOption, DataElement, IndicatorGroup,
IndicatorGroupSet, Legend, LegendSet and OptionSet through hbm.xml. On master
those entities are JPA-annotated, so #24810 changed the strategy there. Apply
the same switch here.
GuardedNonStrictCacheEffectTest boots a real SessionFactory against H2.
Hibernate's ClassLoaderService only understands classpath://, so the
documented classpath:ehcache.xml default never resolved. Required by the
eviction-guard SessionFactory tests and by L2 cache boot in a plain JVM.
Cherry-picked from 3070342 (#24767).
HibernateEhcacheConfigFileTest and HibernateCacheRegionsTest use
hibernate-jcache and ehcache APIs. dependency:analyze failed the unit-test
and sonarqube jobs without these test-scoped declarations.
NOSONAR on the volatile generations pair and JCache region inheritance
(same design as master). Tests: sequential H2 db names, documented JPA
ctor, method references for removeAll.
@sonarqubecloud

Copy link
Copy Markdown

@netroms
netroms merged commit 2525919 into 2.42 Sep 8, 2026
14 checks passed
@netroms
netroms deleted the backport/l2-eviction-guard-2.42 branch September 8, 2026 07:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants