Details
-
Type:
New Feature
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Security Level: All
-
Labels:None
Description
Many related "standing data" tables are very static and seldom change. There should be a metadata config to enable result cache for ALL repository operations.
@entity(resultCache=@cache(ttl=3600))
This should directly support cache invalidation through a tag. Each repository gets a key with the current version. The version is one part ofthe actual cache datas key.
A new cache key version is generated:
1. When none is found during find operation
2. When any write operation is done.
For transaction consisteny the rollback operation in UoW needs to reset cache keys and only after a succesful commit operation the new cache key version should be set.
We may need begin, commit, rollback events in UoW for this.