You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Tupitsyn (JIRA)" <ji...@apache.org> on 2016/08/09 12:32:26 UTC
[jira] [Updated] (IGNITE-3299) Cache remove can be lost in ATOMIC
cache with OFFHEAP_TIERED memory mode
[ https://issues.apache.org/jira/browse/IGNITE-3299?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Tupitsyn updated IGNITE-3299:
-----------------------------------
Fix Version/s: (was: 1.7)
1.8
> Cache remove can be lost in ATOMIC cache with OFFHEAP_TIERED memory mode
> ------------------------------------------------------------------------
>
> Key: IGNITE-3299
> URL: https://issues.apache.org/jira/browse/IGNITE-3299
> Project: Ignite
> Issue Type: Bug
> Components: cache
> Reporter: Semen Boikov
> Assignee: Semen Boikov
> Priority: Critical
> Fix For: 1.8
>
>
> Added test reproducing issue (IgniteCacheConcurrentPutGetRemove).
> 1. There is an issue with 'deferredDelete' implementation - entry marked as 'deleted' can be evicted from cache, after this information about remove is lost (note: this can be reproduced not only in OFFHEAP_TIERED, but also in ONHEAP_TIERED mode with eviction policy, also this can also cause lost update in transactional cache on changing topology).
> 2. Looks like condition for removing from offheap in GridCacheMapEntry.innerUpdate is not correct:
> {noformat}
> if (op != GridCacheOperation.UPDATE && cctx.offheapTiered() && hasValPtr) {
> boolean rmv = cctx.swap().removeOffheap(key);
> {noformat}
> It is possible that value was put in offheap, but 'hasValPtr' is false.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)