You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Duo Zhang (Jira)" <ji...@apache.org> on 2021/07/30 13:49:00 UTC

[jira] [Resolved] (HBASE-26105) Rectify the expired TODO comment in CombinedBC

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

Duo Zhang resolved HBASE-26105.
-------------------------------
    Hadoop Flags: Reviewed
      Resolution: Fixed

Pushed to branch-2.3+.

Thanks [~xytss123] for contributing.

> Rectify the expired TODO comment in CombinedBC
> ----------------------------------------------
>
>                 Key: HBASE-26105
>                 URL: https://issues.apache.org/jira/browse/HBASE-26105
>             Project: HBase
>          Issue Type: Improvement
>          Components: BlockCache
>            Reporter: Yutong Xiao
>            Assignee: Yutong Xiao
>            Priority: Trivial
>             Fix For: 2.5.0, 3.0.0-alpha-2, 2.4.6, 2.3.7
>
>
> In the method getBlock in CombinedBC, there is a TODO comment as follows:
> {code:java}
> @Override
>   public Cacheable getBlock(BlockCacheKey cacheKey, boolean caching,
>       boolean repeat, boolean updateCacheMetrics) {
>     // TODO: is there a hole here, or just awkwardness since in the lruCache getBlock
>     // we end up calling l2Cache.getBlock.
>     // We are not in a position to exactly look at LRU cache or BC as BlockType may not be getting
>     // passed always.
>     boolean existInL1 = l1Cache.containsBlock(cacheKey);
>     if (!existInL1 && updateCacheMetrics && !repeat) {
>       // If the block does not exist in L1, the containsBlock should be counted as one miss.
>       l1Cache.getStats().miss(caching, cacheKey.isPrimary(), cacheKey.getBlockType());
>     }
>     return existInL1 ?
>         l1Cache.getBlock(cacheKey, caching, repeat, updateCacheMetrics):
>         l2Cache.getBlock(cacheKey, caching, repeat, updateCacheMetrics);
>   }
> {code}
> The TODO comment is expired. While in CombinedBC, L2 is not the victim handler of L1.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)