You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2015/04/09 10:58:51 UTC

[18/50] [abbrv] incubator-ignite git commit: IGNITE-180 - Fixed awaitPartitionMap for dynamically started cache.

IGNITE-180 - Fixed awaitPartitionMap for dynamically started cache.


Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/fd011e28
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/fd011e28
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/fd011e28

Branch: refs/heads/ignite-sprint-4
Commit: fd011e282fd818ff3cab1bda94fd236207bb8779
Parents: beedb17
Author: Alexey Goncharuk <ag...@gridgain.com>
Authored: Tue Apr 7 17:09:51 2015 -0700
Committer: Alexey Goncharuk <ag...@gridgain.com>
Committed: Tue Apr 7 17:09:51 2015 -0700

----------------------------------------------------------------------
 .../dht/GridClientPartitionTopology.java        |  6 ++---
 .../dht/GridDhtPartitionTopologyImpl.java       |  6 ++---
 .../cache/IgniteDynamicCacheStartSelfTest.java  | 23 ++++++++++++++++++++
 3 files changed, 29 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fd011e28/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridClientPartitionTopology.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridClientPartitionTopology.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridClientPartitionTopology.java
index 4640192..331de4e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridClientPartitionTopology.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridClientPartitionTopology.java
@@ -220,21 +220,21 @@ public class GridClientPartitionTopology implements GridDhtPartitionTopology {
             // If this is the oldest node.
             if (oldest.id().equals(loc.id()) || exchFut.isCacheAdded(cacheId)) {
                 if (node2part == null) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq);
 
                     if (log.isDebugEnabled())
                         log.debug("Created brand new full topology map on oldest node [exchId=" +
                             exchId + ", fullMap=" + fullMapString() + ']');
                 }
                 else if (!node2part.valid()) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq, node2part, false);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq, node2part, false);
 
                     if (log.isDebugEnabled())
                         log.debug("Created new full topology map on oldest node [exchId=" + exchId + ", fullMap=" +
                             node2part + ']');
                 }
                 else if (!node2part.nodeId().equals(loc.id())) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq, node2part, false);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq, node2part, false);
 
                     if (log.isDebugEnabled())
                         log.debug("Copied old map into new map on oldest node (previous oldest node left) [exchId=" +

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fd011e28/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 30b4c80..073e0e7 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
@@ -249,21 +249,21 @@ class GridDhtPartitionTopologyImpl<K, V> implements GridDhtPartitionTopology {
             // If this is the oldest node.
             if (oldest.id().equals(loc.id()) || exchFut.isCacheAdded(cctx.cacheId())) {
                 if (node2part == null) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq);
 
                     if (log.isDebugEnabled())
                         log.debug("Created brand new full topology map on oldest node [exchId=" +
                             exchId + ", fullMap=" + fullMapString() + ']');
                 }
                 else if (!node2part.valid()) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq, node2part, false);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq, node2part, false);
 
                     if (log.isDebugEnabled())
                         log.debug("Created new full topology map on oldest node [exchId=" + exchId + ", fullMap=" +
                             node2part + ']');
                 }
                 else if (!node2part.nodeId().equals(loc.id())) {
-                    node2part = new GridDhtPartitionFullMap(loc.id(), loc.order(), updateSeq, node2part, false);
+                    node2part = new GridDhtPartitionFullMap(oldest.id(), oldest.order(), updateSeq, node2part, false);
 
                     if (log.isDebugEnabled())
                         log.debug("Copied old map into new map on oldest node (previous oldest node left) [exchId=" +

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/fd011e28/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
index b83924b25..32809e6 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
@@ -997,4 +997,27 @@ public class IgniteDynamicCacheStartSelfTest extends GridCommonAbstractTest {
             daemon = false;
         }
     }
+
+    /**
+     * @throws Exception If failed.
+     */
+    public void testAwaitPartitionMapExchange() throws Exception {
+        try (IgniteCache ignored = grid(0).getOrCreateCache(new CacheConfiguration(DYNAMIC_CACHE_NAME))) {
+            awaitPartitionMapExchange();
+
+            startGrid(nodeCount());
+
+            awaitPartitionMapExchange();
+
+            startGrid(nodeCount() + 1);
+
+            awaitPartitionMapExchange();
+
+            stopGrid(nodeCount() + 1);
+
+            awaitPartitionMapExchange();
+
+            stopGrid(nodeCount());
+        }
+    }
 }