Skip to content

perf: L2 cache NONSTRICT + eviction guard (#24810, #24916) [2.41] - #24987

Closed
netroms wants to merge 6 commits into
2.41from
backport/l2-eviction-guard-2.41
Closed

perf: L2 cache NONSTRICT + eviction guard (#24810, #24916) [2.41]#24987
netroms wants to merge 6 commits into
2.41from
backport/l2-eviction-guard-2.41

Conversation

@netroms

@netroms netroms commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Backport of #24810, adapted for Ehcache 2.

2.41 still uses hibernate-ehcache / Ehcache 2, not master's JCache stack. Reference-metadata cache strategy is switched in hbm.xml. Hot regions are predefined in ehcache.xml. TTL capped at one hour.

#24916 (eviction guard) is not included: wiring it through EhcacheRegionFactory broke Period resolution and collapsed the SessionFactory in H2 controller tests. #24827 (NONSTRICT only) is green on 2.41.

#24767 (ramp harness) is not included: 2.41 has no gatling performance module.

Overlaps #24827.

AI Assisted

2.41 maps the reference-metadata set through hbm.xml (JPA on master) and
uses Ehcache 2, so #24810's annotation and ehcache-3 changes do not apply.
Switch those mappings to nonstrict-read-write, cap TTL at one hour, and
predefine the hot regions from #24810.
2.41 has no JCacheDomainDataRegionImpl. EhcacheRegionFactory builds
Hibernate's DomainDataRegionImpl, which is the correct superclass here.
#24916's GuardedJCacheRegionFactory has no safe Ehcache 2 counterpart:
H2 controller tests then fail with null Period, invalid period ISO, and
a closed EntityManagerFactory. #24827 (NONSTRICT only) is green on 2.41.
Keep the cache-strategy switch and predefined regions; leave the guard
on JCache branches.
@sonarqubecloud

Copy link
Copy Markdown

@netroms
netroms marked this pull request as draft August 31, 2026 04:34
@netroms netroms closed this Sep 8, 2026
@netroms
netroms deleted the backport/l2-eviction-guard-2.41 branch September 8, 2026 07:32
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.

1 participant