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

Xiaolin Ha updated HBASE-27647:
-------------------------------
    Description: 
When caching the block by reading from hfile, the block cached will contains a 
header with the next block info.

But when caching the block by writing when cacheDataOnWrite is on, the block 
cached without the header of the next block info.

Then when comparing the old and new blocks in 
BlockCacheUtil#validateBlockAddition, it will print error logs ,
{code:java}
hfile.BlockCacheUtil: Cached block contents differ, which should not have 
happened. cacheKey:XXX {code}
This will harm the actual replacement of the cached lock, since we should 
replace or not when the cached block contents differ by nextBlockOnDiskSize. 

  was:
When caching the block by reading from hfile, the block cached will contains a 
header with the next block info.

But when caching the block by writing when cacheDataOnWrite is on, the block 
cached without the header of the next block info.

Then comparing the old and new blocking in 
BlockCacheUtil#validateBlockAddition, it will print error logs ,
{code:java}
hfile.BlockCacheUtil: Cached block contents differ, which should not have 
happened. cacheKey:XXX {code}
This will harm the actual replacement of the cached lock, since we should 
replace or not when the cached block contents differ by nextBlockOnDiskSize. 


> Fix the cached block differ (which should not have happened) issue with 
> cacheDataOnWrite on
> -------------------------------------------------------------------------------------------
>
>                 Key: HBASE-27647
>                 URL: https://issues.apache.org/jira/browse/HBASE-27647
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Xiaolin Ha
>            Assignee: Xiaolin Ha
>            Priority: Major
>
> When caching the block by reading from hfile, the block cached will contains 
> a header with the next block info.
> But when caching the block by writing when cacheDataOnWrite is on, the block 
> cached without the header of the next block info.
> Then when comparing the old and new blocks in 
> BlockCacheUtil#validateBlockAddition, it will print error logs ,
> {code:java}
> hfile.BlockCacheUtil: Cached block contents differ, which should not have 
> happened. cacheKey:XXX {code}
> This will harm the actual replacement of the cached lock, since we should 
> replace or not when the cached block contents differ by nextBlockOnDiskSize. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to