[
https://issues.apache.org/jira/browse/HBASE-27474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wellington Chevreuil resolved HBASE-27474.
------------------------------------------
Release Note:
This modifies behaviour of block cache management as follows:
1) Always evict blocks for the files from parent split region once it's closed,
regardless of the "hbase.rs.evictblocksonclose" configured value;
2) If compactions are enabled, doesn't cache blocks for the refs/link files
under split daughters once these regions are opened;
For #1 above, an additional evict_cache property has been added to the
CloseRegionRequest protobuf message. It's default to false. Rolling upgrading
cluster would retain the previous behaviour on RSes not yet upgraded.
Resolution: Fixed
Thanks for the review [~psomogyi] ! Had merged into master and branch-2.
> Evict blocks on split/merge; Avoid caching reference/hlinks if compaction is
> enabled
> ------------------------------------------------------------------------------------
>
> Key: HBASE-27474
> URL: https://issues.apache.org/jira/browse/HBASE-27474
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 3.0.0-alpha-3
> Reporter: Wellington Chevreuil
> Assignee: Wellington Chevreuil
> Priority: Major
> Fix For: 2.6.0, 3.0.0-alpha-4
>
>
> This change aims to improve block cache usage upon splits/merges. On a
> split/merge event the following main steps happen:
> 1) parent regions are closed; 2) daughters are created and opened with
> refs/hlinks; 3) Compaction is triggered soon after the daughters get online;
> With "hbase.rs.evictblocksonclose" set to false, we keep all blocks for the
> closed regions in 1, then will try to load same blocks again on 2 (since we
> are using the refs/links for the cache key), just to throw it away and cache
> the compaction resulting file in 3.
> If the block cache is close to its capacity, blocks from the compacted files
> in 3 will likely miss the cache.
> The proposal here is to always evict blocks for parent regions on a
> split/merge event, and also avoid caching blocks for refs/hlinks if
> compactions are enabled.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)