[
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)