ignite-6467
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/625af1be Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/625af1be Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/625af1be Branch: refs/heads/ignite-6467 Commit: 625af1be8fc995d7f7ab1a193cd8e08bdb1490ec Parents: b79faa3 Author: sboikov <sboi...@apache.org> Authored: Tue Jul 24 10:16:13 2018 +0300 Committer: sboikov <sboi...@apache.org> Committed: Tue Jul 24 10:16:13 2018 +0300 ---------------------------------------------------------------------- .../java/org/apache/ignite/TestDebugLog1.java | 7 +++++++ .../processors/cache/GridCacheMapEntry.java | 6 ++++-- .../distributed/dht/GridDhtCacheEntry.java | 5 +++++ .../dht/GridDhtPartitionTopologyImpl.java | 2 +- .../distributed/CacheExchangeMergeTest.java | 22 +++++++++----------- 5 files changed, 27 insertions(+), 15 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/625af1be/modules/core/src/main/java/org/apache/ignite/TestDebugLog1.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/TestDebugLog1.java b/modules/core/src/main/java/org/apache/ignite/TestDebugLog1.java index acb1372..318028c 100644 --- a/modules/core/src/main/java/org/apache/ignite/TestDebugLog1.java +++ b/modules/core/src/main/java/org/apache/ignite/TestDebugLog1.java @@ -474,6 +474,13 @@ public class TestDebugLog1 { if (msg instanceof EntryMessage && !((EntryMessage)msg).key.equals(key)) continue; + if (msg instanceof PartMessage) { + PartMessage pm = (PartMessage)msg; + + if (pm.cacheId != cacheId || pm.partId != partId) + continue; + } + System.out.println(msg); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/625af1be/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java index 4620bbc..721db55 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java @@ -199,8 +199,6 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme protected void value(@Nullable CacheObject val) { assert lock.isHeldByCurrentThread(); - TestDebugLog1.addCacheEntryMessage(this, val, "set"); - this.val = val; } @@ -1042,6 +1040,8 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme if (tx != null && cctx.group().persistenceEnabled() && cctx.group().walEnabled()) logPtr = logTxUpdate(tx, val, expireTime, updateCntr0); + TestDebugLog1.addCacheEntryMessage(this, val, "innerSet"); + update(val, expireTime, ttl, newVer, true); drReplicate(drType, val, newVer, topVer); @@ -2773,6 +2773,8 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme update = storeValue(val, expTime, ver, p); if (update) { + TestDebugLog1.addCacheEntryMessage(this, val, "initialVal"); + update(val, expTime, ttl, ver, true); boolean skipQryNtf = false; http://git-wip-us.apache.org/repos/asf/ignite/blob/625af1be/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheEntry.java index fe02090..2c43342 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheEntry.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtCacheEntry.java @@ -24,6 +24,7 @@ import java.util.Collections; import java.util.List; import java.util.UUID; import org.apache.ignite.IgniteCheckedException; +import org.apache.ignite.TestDebugLog1; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.internal.IgniteInternalFuture; import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion; @@ -648,6 +649,10 @@ public class GridDhtCacheEntry extends GridDistributedCacheEntry { ']'); } + + TestDebugLog1.addCacheEntryMessage(this, val, "clear"); + + removeValue(); // Give to GC. http://git-wip-us.apache.org/repos/asf/ignite/blob/625af1be/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java index aa43b2f..324048f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java @@ -912,7 +912,7 @@ public class GridDhtPartitionTopologyImpl implements GridDhtPartitionTopology { else if (loc != null && state == RENTING && !showRenting) { throw new GridDhtInvalidPartitionException(p, "Adding entry to partition that is concurrently " + "evicted [grp=" + grp.cacheOrGroupName() + ", part=" + p + ", shouldBeMoving=" - + ", belongs=" + belongs + ", topVer=" + topVer + ", curTopVer=" + this.readyTopVer + "]"); + + ", belongs=" + belongs + ", belongs0=" + partitionLocalNode(p, this.readyTopVer) + ", topVer=" + topVer + ", curTopVer=" + this.readyTopVer + "]"); } if (loc == null) { http://git-wip-us.apache.org/repos/asf/ignite/blob/625af1be/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java index c81883d..8d07fa0 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java @@ -206,13 +206,6 @@ public class CacheExchangeMergeTest extends GridCommonAbstractTest { /** * @throws Exception If failed. */ - public void testConcurrentStartServers() throws Exception { - concurrentStart(false); - } - - /** - * @throws Exception If failed. - */ public void testConcurrentStartServersAndClients() throws Exception { concurrentStart(true); } @@ -439,8 +432,9 @@ public class CacheExchangeMergeTest extends GridCommonAbstractTest { try { assertEquals(err, e.getValue(), res.get(e.getKey())); } catch (AssertionFailedError err0) { - TestDebugLog1.addMessage(err0.getMessage()); - TestDebugLog1.printPartMessages("test_debug.txt", CU.cacheId(cacheName), node.affinity(cacheName).partition(e.getKey())); + err0.printStackTrace(System.out); + TestDebugLog1.addMessage("1 " + err0.getMessage()); + TestDebugLog1.printKeyAndPartMessages("test_debug.txt", e.getKey(), node.affinity(cacheName).partition(e.getKey()), CU.cacheId(cacheName)); System.exit(1); } } @@ -449,7 +443,7 @@ public class CacheExchangeMergeTest extends GridCommonAbstractTest { if (cache.getConfiguration(CacheConfiguration.class).getAtomicityMode() == TRANSACTIONAL) { for (TransactionConcurrency concurrency : TransactionConcurrency.values()) { for (TransactionIsolation isolation : TransactionIsolation.values()) - checkNodeCaches(err, node, cache, concurrency, isolation); + checkNodeCaches(err, node, cache, TransactionConcurrency.OPTIMISTIC, TransactionIsolation.SERIALIZABLE); } } } @@ -496,14 +490,18 @@ public class CacheExchangeMergeTest extends GridCommonAbstractTest { } catch (ClusterTopologyException ignore) { // No-op. + ignore.printStackTrace(); + + System.exit(2); } for (Map.Entry<Object, Object> e : map.entrySet()) { try { assertEquals(err + " " + concurrency + " " + isolation, e.getValue(), cache.get(e.getKey())); } catch (AssertionFailedError err0) { - TestDebugLog1.addMessage(err0.getMessage()); - TestDebugLog1.printPartMessages("test_debug.txt", CU.cacheId(cache.getName()), node.affinity(cache.getName()).partition(e.getKey())); + err0.printStackTrace(System.out); + TestDebugLog1.addMessage("2 " + node.cluster().localNode().id() + " " + err0.getMessage()); + TestDebugLog1.printKeyAndPartMessages("test_debug.txt", e.getKey(), node.affinity(cache.getName()).partition(e.getKey()), CU.cacheId(cache.getName())); System.exit(1); } }