[
https://issues.apache.org/jira/browse/HDDS-3267?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated HDDS-3267:
---------------------------------
Labels: pull-request-available (was: )
> Replace ContainerCache in BlockUtils by LoadingCache
> ----------------------------------------------------
>
> Key: HDDS-3267
> URL: https://issues.apache.org/jira/browse/HDDS-3267
> Project: Hadoop Distributed Data Store
> Issue Type: Improvement
> Reporter: Isa Hekmatizadeh
> Assignee: Isa Hekmatizadeh
> Priority: Minor
> Labels: pull-request-available
>
> As discussed in [here|https://github.com/apache/hadoop-ozone/pull/705]
> current version of ContainerCache is just used by BlockUtils and has several
> architectural issues. for example:
> * It uses a ReentrantLock which could be replaced by synchronized methods
> * It should maintain a referenceCount for each DBHandler
> * It extends LRUMap while it would be better to hide it by the composition
> and not expose LRUMap related methods.
> As [~pifta] suggests, we could replace all ContainerCache functionality by
> using Guava LoadingCache.
> This new LoadingCache could be configured to evict by size, by this
> configuration the functionality would be slightly different as it may evict
> DBHandlers while they are in use (referenceCount>0) but we can configure it
> to use reference base eviction based on CacheBuilder.weakValues()
> I want to open this discussion here instead of Github so I created this
> ticket.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]