geode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GEODE-2097) Offheap persistent heapLRU regions can run out of offheap memory during recovery
Date Mon, 24 Apr 2017 20:21:04 GMT

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

ASF subversion and git services commented on GEODE-2097:
--------------------------------------------------------

Commit 6eb9ff36dddeaaea01f624b453b4fa6d308b93f4 in geode's branch refs/heads/feature/GEODE-2632-6-1
from [~dschneider]
[ https://git-wip-us.apache.org/repos/asf?p=geode.git;h=6eb9ff3 ]

GEODE-2097: fix flaky test


> Offheap persistent heapLRU regions can run out of offheap memory during recovery
> --------------------------------------------------------------------------------
>
>                 Key: GEODE-2097
>                 URL: https://issues.apache.org/jira/browse/GEODE-2097
>             Project: Geode
>          Issue Type: Bug
>          Components: offheap
>            Reporter: Darrel Schneider
>            Assignee: Darrel Schneider
>             Fix For: 1.2.0
>
>
> When the data for a persistent region is being recovered from the disk store the lru
limit is constantly checked. If the lru limit is exceeded then value recovery will cease.
But for off-heap regions this lru limit should be checking how much off-heap memory has been
allocated.
> During recovery the amount of heap memory is being checked for an offheap regions. So
we can end up recovering too many values to off-heap and running out of off-heap memory during
recovery.
> The code that causes this problem is: org.apache.geode.internal.cache.lru.HeapLRUCapacityController.createLRUHelper().new
AbstractEnableLRU() {...}.mustEvict(LRUStatistics, Region, int)
> During off-heap disk store recovery the Region parameter passed to this method is "null".
This causes the following heap check to be done:        
>        if (region == null) {
>           return resourceManager.getHeapMonitor().getState().isEviction();
>         }



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message