hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13301) Possible memory leak in BucketCache
Date Tue, 14 Apr 2015 15:18:13 GMT

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

Hudson commented on HBASE-13301:
--------------------------------

SUCCESS: Integrated in HBase-0.98-on-Hadoop-1.1 #901 (See [https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/901/])
HBASE-13301 Possible memory leak in BucketCache (zhangduo: rev 0169cbfde8967044ef1248e8fa91dcd8abc83f14)
* hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/CachedEntryQueue.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/bucket/TestBucketCache.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/CacheTestUtils.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/util/IdLock.java


> Possible memory leak in BucketCache
> -----------------------------------
>
>                 Key: HBASE-13301
>                 URL: https://issues.apache.org/jira/browse/HBASE-13301
>             Project: HBase
>          Issue Type: Bug
>          Components: BlockCache
>            Reporter: zhangduo
>            Assignee: zhangduo
>             Fix For: 2.0.0, 1.1.0, 0.98.13, 1.0.2
>
>         Attachments: HBASE-13301-0.98.patch, HBASE-13301-0.98_v1.patch, HBASE-13301-branch-1.0.patch,
HBASE-13301-branch-1.0.patch, HBASE-13301-branch-1.0_v1.patch, HBASE-13301-branch-1.patch,
HBASE-13301-branch-1_v1.patch, HBASE-13301-testcase.patch, HBASE-13301-testcase_v1.patch,
HBASE-13301.patch, HBASE-13301_v1.patch, HBASE-13301_v2.patch, HBASE-13301_v3.patch
>
>
> {code:title=BucketCache.java}
> public boolean evictBlock(BlockCacheKey cacheKey) {
>       ...
>       if (bucketEntry.equals(backingMap.remove(cacheKey))) {
>         bucketAllocator.freeBlock(bucketEntry.offset());
>         realCacheSize.addAndGet(-1 * bucketEntry.getLength());
>         blocksByHFile.remove(cacheKey.getHfileName(), cacheKey);
>         if (removedBlock == null) {
>           this.blockNumber.decrementAndGet();
>         }
>       } else {
>         return false;
>       }
>       ...
> {code}
> I think the problem is here. We remove a BucketEntry that should not be removed by us,
but we do not put it back and also do not do any clean up.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message