[ 
https://issues.apache.org/jira/browse/HBASE-22422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16840167#comment-16840167
 ] 

Zheng Hu commented on HBASE-22422:
----------------------------------

The following code may  also have some problem (HFileReaderImpl#readBlock): 
{code}
        // Load block from filesystem.
        HFileBlock hfileBlock = fsBlockReader.readBlockData(dataBlockOffset, 
onDiskBlockSize, pread,
          !isCompaction, shouldUseHeap(expectedBlockType));
        validateBlockType(hfileBlock, expectedBlockType);
        HFileBlock unpacked = hfileBlock.unpack(hfileContext, fsBlockReader);
        BlockType.BlockCategory category = 
hfileBlock.getBlockType().getCategory();

        // Cache the block if necessary
        AtomicBoolean cachedRaw = new AtomicBoolean(false);
        cacheConf.getBlockCache().ifPresent(cache -> {
          if (cacheBlock && cacheConf.shouldCacheBlockOnRead(category)) {
            cachedRaw.set(cacheConf.shouldCacheCompressed(category));
            cache.cacheBlock(cacheKey, cachedRaw.get() ? hfileBlock : unpacked,
              cacheConf.isInMemory());
          }
        });
        if (unpacked != hfileBlock && !cachedRaw.get()) {
          // End of life here if hfileBlock is an independent block.
          hfileBlock.release();
        }
{code}

> Retain an ByteBuff with refCnt=0 when getBlock from LRUCache
> ------------------------------------------------------------
>
>                 Key: HBASE-22422
>                 URL: https://issues.apache.org/jira/browse/HBASE-22422
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Zheng Hu
>            Assignee: Zheng Hu
>            Priority: Major
>         Attachments: LRUBlockCache-getBlock.png, 
> image-2019-05-15-12-00-03-641.png
>
>
> After runing YCSB scan/get benchmark in our XiaoMi cluster,  we found the get 
> QPS dropped from  25000/s to hunderds per second in a cluster with five 
> nodes.  
> After enable the debug log at YCSB client side,  I found the following 
> stacktrace , see 
> https://issues.apache.org/jira/secure/attachment/12968745/image-2019-05-15-12-00-03-641.png
> Need a patch to fix this. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to