You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Denis Magda (JIRA)" <ji...@apache.org> on 2016/01/30 07:59:39 UTC

[jira] [Updated] (IGNITE-2509) Broken eviction for OFFHEAP_VALUES cache mode

     [ https://issues.apache.org/jira/browse/IGNITE-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Denis Magda updated IGNITE-2509:
--------------------------------
    Fix Version/s: 1.6

> Broken eviction for OFFHEAP_VALUES cache mode
> ---------------------------------------------
>
>                 Key: IGNITE-2509
>                 URL: https://issues.apache.org/jira/browse/IGNITE-2509
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 1.5.0.final
>            Reporter: Denis Magda
>            Assignee: Vladimir Ershov
>             Fix For: 1.6
>
>         Attachments: EvictionBug.java, eviction_fix.patch
>
>
> In case when {{OFFHEAP_VALUES}} mode is used {{EvictionPolicy}} calculates values size wrongly which leads to the fact that data is evicted only when either the limit on number of entries is reached or size of keys is bigger than max allowed size.
> To reproduce set the following cache configuration
> {noformat}
>         FifoEvictionPolicy plc = new FifoEvictionPolicy();
>         plc.setMaxMemorySize(2 * 1024 * 1024);
>         cacheCfg.setEvictionPolicy(plc);
>         cacheCfg.setMemoryMode(CacheMemoryMode.OFFHEAP_VALUES);
>         cacheCfg.setSwapEnabled(true);
> {noformat}
> Test that reproduces the issue is attached.
> Also attached a patch that fixes the issue. However we should validate that the fix is full and add additional tests to the test suites.
> Finally, {{cache.metrics().getOffHeapAllocatedSize()}} always returns 0 for this cache mode. Has to be fixed as well.



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