[
https://issues.apache.org/jira/browse/HBASE-28217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wellington Chevreuil resolved HBASE-28217.
------------------------------------------
Resolution: Fixed
Thanks for reviewing it, [~psomogyi]. I have merged it to master, branch-3,
branch-2, branch-2.5 and branch-2.4.
> PrefetchExecutor should not run for files from CFs that have disabled
> BLOCKCACHE
> --------------------------------------------------------------------------------
>
> Key: HBASE-28217
> URL: https://issues.apache.org/jira/browse/HBASE-28217
> Project: HBase
> Issue Type: Bug
> Affects Versions: 2.6.0, 3.0.0-alpha-4, 2.4.17, 2.5.6, 4.0.0-alpha-1
> Reporter: Wellington Chevreuil
> Assignee: Wellington Chevreuil
> Priority: Major
> Fix For: 2.6.0, 2.4.18, 3.0.0-beta-1, 4.0.0-alpha-1, 2.5.7
>
>
> HFilePReadReader relies on the return of CacheConfig.shouldPrefetchOnOpen
> return to decide if it should run the PrefetchExecutor for the files.
> Currently, CacheConfig.shouldPrefetchOnOpen returns true if
> "hbase.rs.prefetchblocksonopen" is set to true at the config, OR
> PREFETCH_BLOCKS_ON_OPEN is set to true at CF level.
> There's also the CacheConfig.shouldCacheDataOnRead, which returns true if
> both hbase.block.data.cacheonread is set to true at the config AND BLOCKCACHE
> is set to true at CF level.
> If BLOCKCACHE is set to false at CF level, HFilePReadReader will still run
> the PrefetchExecutor to read all the file's blocks from the FileSystem, but
> then would find out the given block shouldn't be cached.
> I believe we should change CacheConfig.shouldPrefetchOnOpen to return true
> only if CacheConfig.shouldCacheDataOnRead is also true.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)