Return-Path: X-Original-To: apmail-ignite-commits-archive@minotaur.apache.org Delivered-To: apmail-ignite-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id DFD3D17E0F for ; Wed, 22 Apr 2015 18:41:56 +0000 (UTC) Received: (qmail 44090 invoked by uid 500); 22 Apr 2015 18:41:50 -0000 Delivered-To: apmail-ignite-commits-archive@ignite.apache.org Received: (qmail 44040 invoked by uid 500); 22 Apr 2015 18:41:50 -0000 Mailing-List: contact commits-help@ignite.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.incubator.apache.org Delivered-To: mailing list commits@ignite.incubator.apache.org Received: (qmail 44022 invoked by uid 99); 22 Apr 2015 18:41:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Apr 2015 18:41:50 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [54.191.145.13] (HELO mx1-us-west.apache.org) (54.191.145.13) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Apr 2015 18:41:45 +0000 Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-us-west.apache.org (ASF Mail Server at mx1-us-west.apache.org) with SMTP id 0E57324F14 for ; Wed, 22 Apr 2015 18:41:25 +0000 (UTC) Received: (qmail 42975 invoked by uid 99); 22 Apr 2015 18:41:24 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Apr 2015 18:41:24 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 9A1C9E03CE; Wed, 22 Apr 2015 18:41:24 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: sboikov@apache.org To: commits@ignite.incubator.apache.org Date: Wed, 22 Apr 2015 18:41:27 -0000 Message-Id: <50104759e2ae4b318235a9348e6c13a5@git.apache.org> In-Reply-To: <751a6222a8a340d99eea224bb81edbaa@git.apache.org> References: <751a6222a8a340d99eea224bb81edbaa@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [04/31] incubator-ignite git commit: #ignite-sprint-4: fix IgniteCacheQueryMultiThreadedSelfTest. X-Virus-Checked: Checked by ClamAV on apache.org #ignite-sprint-4: fix IgniteCacheQueryMultiThreadedSelfTest. Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/fc8a98e6 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/fc8a98e6 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/fc8a98e6 Branch: refs/heads/ignite-446 Commit: fc8a98e6d81589d2641970dfec0a0609199c615b Parents: bc025d9 Author: ivasilinets Authored: Tue Apr 21 13:43:00 2015 +0300 Committer: ivasilinets Committed: Tue Apr 21 13:43:00 2015 +0300 ---------------------------------------------------------------------- .../processors/cache/GridCacheEvictionManager.java | 11 ++++++++++- .../cache/IgniteCacheQueryMultiThreadedSelfTest.java | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fc8a98e6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java index b0c9243..9135c16 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEvictionManager.java @@ -915,6 +915,8 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter { List locked = new ArrayList<>(keys.size()); + Set notRemove = null; + Collection swapped = new ArrayList<>(keys.size()); boolean recordable = cctx.events().isRecordable(EVT_CACHE_ENTRY_EVICTED); @@ -944,6 +946,13 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter { locked.add(entry); + if (entry.obsolete()) { + if (notRemove == null) + notRemove = new HashSet<>(); + + notRemove.add(entry); + } + if (obsoleteVer == null) obsoleteVer = cctx.versions().next(); @@ -971,7 +980,7 @@ public class GridCacheEvictionManager extends GridCacheManagerAdapter { // Remove entries and fire events outside the locks. for (GridCacheEntryEx entry : locked) { - if (entry.obsolete()) { + if (entry.obsolete() && (notRemove == null || !notRemove.contains(entry))) { entry.onMarkedObsolete(); cache.removeEntry(entry); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fc8a98e6/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java index 51fc92d..66e2470 100644 --- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java +++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheQueryMultiThreadedSelfTest.java @@ -193,6 +193,7 @@ public class IgniteCacheQueryMultiThreadedSelfTest extends GridCommonAbstractTes assertEquals("Swap keys: " + c.size(CachePeekMode.SWAP), 0, c.size(CachePeekMode.SWAP)); assertEquals(0, c.size(CachePeekMode.OFFHEAP)); + assertEquals(0, c.size(CachePeekMode.PRIMARY)); assertEquals(0, c.size()); } }