cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrus Adamchik (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CAY-2259) CacheInvalidationFilter - broadcast cache invlidation events to interested listeners
Date Thu, 09 Mar 2017 18:32:38 GMT

     [ https://issues.apache.org/jira/browse/CAY-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andrus Adamchik updated CAY-2259:
---------------------------------
    Description: 
With cayenne-jcache we lost the ability to invalidate caches not handled by Cayenne. The API
for CacheManager's caches introspection requires the caller to know the generic parameters
of a named cache. So we can no longer invalidate caches that were not created for Cayenne
(and that are known to be of type "Cache<String, List>"). 

A possible solution would be to extend @CacheGroups annotation to specify cache generics "signatures".
And also change QueryCache API, perhaps deprecating 'removeGroup(String)' in favor of 'clearCache(String
name, Class keyType, Class valueType)'

  was:
With cayenne-jcache we lost the ability to invalidate caches not handled by Cayenne. The API
for CacheManager's caches introspection requires the caller to know the generic parameters
of a named cache. So we can no longer invalidate caches that were not created for Cayenne
(and that are known to be of type "Cache<String, List>"). 

So now we need to do two things:

1. JCacheQueryCache.removeGroup(..) should only attempt to remove caches that are in the "seenCacheNames"
collection.
2. Extend @CacheGroups annotation to specify cache generics "signatures". Add support for
cache signatures to CacheGroupsHandler.


> CacheInvalidationFilter - broadcast cache invlidation events to interested listeners
> ------------------------------------------------------------------------------------
>
>                 Key: CAY-2259
>                 URL: https://issues.apache.org/jira/browse/CAY-2259
>             Project: Cayenne
>          Issue Type: Task
>    Affects Versions: 4.0.M5
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>
> With cayenne-jcache we lost the ability to invalidate caches not handled by Cayenne.
The API for CacheManager's caches introspection requires the caller to know the generic parameters
of a named cache. So we can no longer invalidate caches that were not created for Cayenne
(and that are known to be of type "Cache<String, List>"). 
> A possible solution would be to extend @CacheGroups annotation to specify cache generics
"signatures". And also change QueryCache API, perhaps deprecating 'removeGroup(String)' in
favor of 'clearCache(String name, Class keyType, Class valueType)'



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message