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)