[
https://issues.apache.org/jira/browse/CAUSEWAY-3705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Keir Haywood reassigned CAUSEWAY-3705:
---------------------------------------------
Fix Version/s: 2.1.0
(was: 2.2.0)
Assignee: Daniel Keir Haywood
> [Perf] Introduce a TitleCachingService SPI
> ------------------------------------------
>
> Key: CAUSEWAY-3705
> URL: https://issues.apache.org/jira/browse/CAUSEWAY-3705
> Project: Causeway
> Issue Type: New Feature
> Components: Core
> Affects Versions: 2.0.0
> Reporter: Daniel Keir Haywood
> Assignee: Daniel Keir Haywood
> Priority: Major
> Fix For: 2.1.0
>
>
> Calculating titles can cause pages to render much slower than they otherwise
> would, because any object with a reference to others (especially in a
> collection) requires the title to be evaluated for those references, and this
> often will require that entity to be fetched in order to access its
> properties that make up its title. In the worst case, that referenced
> object's title might use not only scalar properties, but also other
> referenced information, so a whole cascade of queries might kick off.
> One option to address this is for domain entities to cache their own title as
> a persisted property. That works, but is boilerplate and laborious.
> This ticket suggests that (unless a domain object opts out), we have an
> implementation of TitleFacet that looks up the title from an object's
> Bookmark/oid. The cache implementation itself should be an SPI, with an
> in-memory as the default that could be enabled ; other alternatives would be
> Redis etc.
> Whenever an object is modified then the cache is updated.
> Refinements:
> * The cache might also be time-limited (mru/lru), so that titles age out
> after time.
> * A background service might go around eagerly populating the cache
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)