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

Andrus Adamchik closed CAY-1774.
--------------------------------

    Resolution: Fixed
    
> EhCacheQueryCache.get(QueryMetadata, QueryCacheEntryFactory) returns null if 
> EhCache instance for group is not present
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAY-1774
>                 URL: https://issues.apache.org/jira/browse/CAY-1774
>             Project: Cayenne
>          Issue Type: Bug
>          Components: Core Library
>    Affects Versions: 3.1B1
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>            Priority: Minor
>             Fix For: 3.1B2, 3.2M1
>
>
> Here is a problematic piece of code: 
> public List get(QueryMetadata metadata, QueryCacheEntryFactory factory) {
>         String key = metadata.getCacheKey();
>         if (key == null) {
>             return null;
>         }
>         
>         Ehcache cache = null;
>         Element result = null;
>         String[] groupNames = metadata.getCacheGroups();
>         if (groupNames != null && groupNames.length > 0) {
>          // SHOULD WE USE 'addCacheIfAbsent' here, as we already have a 
> factory to populate object???
>             cache = cacheManager.getCache(groupNames[0]);
>             if (cache == null) {
>                 return null;
>             }
>    ....
> Sure enough there is a workaround of declaring all cache groups as "caches" 
> within ehcache.xml, so this issue may be about usability and consistency 
> after all ('put' for instance uses 'addCacheIfAbsent', but not 'get' with 
> factory).
> Also maybe we can refactor calls to 'get' and 'put' within this method to 
> avoid multiple cache lookups, when we already have a cache instance in place.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to