Zheng Hu created HBASE-23258:
--------------------------------
Summary: Reconsider the DBB memory leak in the exceptional paths.
Key: HBASE-23258
URL: https://issues.apache.org/jira/browse/HBASE-23258
Project: HBase
Issue Type: Improvement
Reporter: Zheng Hu
Assignee: Zheng Hu
Have a discussion with [~anoop.hbase], we found still have some exceptional
paths which we did not handle DBB#release correctly. More details are the
following:
{code}
> HFileReaderImpl#validateBlockType - When throws Exception, the get block is
> gone. Want to return?
Yeah, we've two cases to validateBlockType. one is reading from cache, another
one is reading from hfile.
we've abstracted the block for both cache types and hfiles ( ex release the
block from heap will donothing), so
here seems we should do release if throws IOException.
> Only inside another condition we return and evict block
readBlock - The got block is unused when we throw Exception on DBE type mismatch
Em..we return null finally , seems the block also need to release the block.
{code}
Will take a look around all the exceptional paths and consider any other DBB
leak issues.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)