Wellington Chevreuil created HBASE-28893: --------------------------------------------
Summary: RefCnt Leak error when closing a HalfStoreFileReader Key: HBASE-28893 URL: https://issues.apache.org/jira/browse/HBASE-28893 Project: HBase Issue Type: Bug Reporter: Wellington Chevreuil Assignee: Wellington Chevreuil In HBASE-28596 we have added ability for references to get resolved to the original file blocks in bucket cache. As part of this, we had to modify HalfStoreFileReader.close method, to create a scanner and seek to boundary cell in order to get the related offset and calculate the limiting offset for blocks we want to evict. We missed close the scanner instance there, which then cause the refcount leaks reported as below: {noformat} 2024-09-25 14:24:51,292 ERROR org.apache.hbase.thirdparty.io.netty.util.ResourceLeakDetector: LEAK: RefCnt.release() was not called before it's garbage-collected. See https://netty.io/wiki/reference-counted-objects.html for more information. Recent access records: Created at: org.apache.hadoop.hbase.nio.RefCnt.<init>(RefCnt.java:59) org.apache.hadoop.hbase.nio.RefCnt.create(RefCnt.java:54) org.apache.hadoop.hbase.nio.ByteBuff.wrap(ByteBuff.java:550) org.apache.hadoop.hbase.io.ByteBuffAllocator.allocate(ByteBuffAllocator.java:357) org.apache.hadoop.hbase.io.hfile.bucket.FileIOEngine.read(FileIOEngine.java:134) org.apache.hadoop.hbase.io.hfile.bucket.BucketCache.getBlock(BucketCache.java:666) org.apache.hadoop.hbase.io.hfile.CombinedBlockCache.getBlock(CombinedBlockCache.java:98) org.apache.hadoop.hbase.io.hfile.HFileReaderImpl.getCachedBlock(HFileReaderImpl.java:1102) org.apache.hadoop.hbase.io.hfile.HFileReaderImpl.readBlock(HFileReaderImpl.java:1287) org.apache.hadoop.hbase.io.hfile.HFileReaderImpl.readBlock(HFileReaderImpl.java:1248) org.apache.hadoop.hbase.io.hfile.HFileBlockIndex$CellBasedKeyBlockIndexReader.loadDataBlockWithScanInfo(HFileBlockIndex.java:318) org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:670) org.apache.hadoop.hbase.io.hfile.HFileReaderImpl$HFileScannerImpl.seekTo(HFileReaderImpl.java:623) org.apache.hadoop.hbase.io.HalfStoreFileReader.close(HalfStoreFileReader.java:368) org.apache.hadoop.hbase.regionserver.HStore.removeCompactedfiles(HStore.java:2352) org.apache.hadoop.hbase.regionserver.HStore.closeAndArchiveCompactedFiles(HStore.java:2314) org.apache.hadoop.hbase.regionserver.CompactedHFilesDischargeHandler.process(CompactedHFilesDischargeHandler.java:41) org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:104) {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)