ajantha-bhat commented on a change in pull request #3580: [CARBONDATA-3665] Support TimeBased Cache expiration using Guava Cache URL: https://github.com/apache/carbondata/pull/3580#discussion_r371041664
########## File path: core/src/main/java/org/apache/carbondata/core/cache/CarbonLRUCache.java ########## @@ -43,10 +45,11 @@ private static final Logger LOGGER = LogServiceFactory.getLogService(CarbonLRUCache.class.getName()); /** - * Map that will contain key as table unique name and value as cache Holder + * Guava cache that holds key as table unique name and value as cache Holder * object */ - private Map<String, Cacheable> lruCacheMap; + private Cache<String, Cacheable> lruCacheMap; Review comment: @jackylk , @ravipesala : what do you think ? @Indhumathi27 : I still think we must have **entry level expiry**, just removing all the cache after certain time is not so useful as cache need to be loaded again ? check this guava issue for the same ([here](https://github.com/google/guava/issues/1203)) I just checked on internet and I found 2 alternatives (under apache license) that supports entry level expiry. a. [caffeine](https://github.com/ben-manes/caffeine) -- This is on top of guava as they support guava adaptor b. [expiringmap](https://github.com/jhalterman/expiringmap) -- This is widely used by many companies in their project. see [here](https://github.com/jhalterman/expiringmap/wiki/Who's-Using-ExpiringMap). I guess we can use this one. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services