[
https://issues.apache.org/jira/browse/PHOENIX-624?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
James Taylor resolved PHOENIX-624.
----------------------------------
Resolution: Fixed
Fix Version/s: 5.0.0
4.0.0
3.0.0
> Changes metadata caches to be LRU
> ---------------------------------
>
> Key: PHOENIX-624
> URL: https://issues.apache.org/jira/browse/PHOENIX-624
> Project: Phoenix
> Issue Type: Task
> Affects Versions: 3.0-Release
> Reporter: elevine
> Assignee: James Taylor
> Fix For: 3.0.0, 4.0.0, 5.0.0
>
>
> From @jamestaylor: There are two metadata caches in the system: one on the
> server side maintained by MetaDataEndpointImpl, the other on the client side
> maintained by PMetaDataImpl. In this multi tenant scheme, we'll need to
> change those to be LRU caches, as they're currently allowed to grow
> unbounded. The server side cache will scan the SYSTEM.TABLE on a cache miss
> and the client side will ask the server for a PTable it doesn't find, so
> making them be an LRU cache should not be too difficult. To switch to an LRU
> cache on the server-side, just change the GlobalCache metaDataCacheMap member
> variable from ConcurrentHashMap to a Guava Cache. To change on the
> client-side, change the PMetaDataImpl metaData member variable from a Map to
> a Cache. In both cases create a new config property that will drive a
> size-based eviction policy.
--
This message was sent by Atlassian JIRA
(v6.2#6252)