ignite-db-x fix testSimpleRebalancing

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

Branch: refs/heads/ignite-3477
Commit: 98b35ff347d0245024ca52ea128c34bb7f9279bb
Parents: 8a6736e
Author: Dmitriy Govorukhin <dgovoruk...@gridgain.com>
Authored: Fri Feb 3 16:24:23 2017 +0300
Committer: Dmitriy Govorukhin <dgovoruk...@gridgain.com>
Committed: Fri Feb 3 16:24:23 2017 +0300

----------------------------------------------------------------------
 .../dht/GridDhtPartitionTopologyImpl.java       |  2 +-
 .../junits/common/GridCommonAbstractTest.java   | 52 ++++++++++++++------
 2 files changed, 38 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/98b35ff3/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 5be1d86..322bbe3 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
@@ -835,7 +835,7 @@ class GridDhtPartitionTopologyImpl implements 
GridDhtPartitionTopology {
         for (int i = 0; i < locParts.length(); i++) {
             GridDhtLocalPartition part = locParts.get(i);
 
-            if (part != null)
+            if (part != null && part.state().active())
                 list.add(part);
         }
         return list;

http://git-wip-us.apache.org/repos/asf/ignite/blob/98b35ff3/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
index 48189f7..80ee6b9 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
@@ -707,17 +707,18 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
 
     /**
      * @param c Cache proxy.
-     *
-     * Print partitionState for cache.
      */
     protected void printPartitionState(IgniteCache<?, ?> c) {
-        IgniteCacheProxy<?, ?> cache = (IgniteCacheProxy<?, ?>)c;
-
-        CacheConfiguration cfg = cache.context().config();
-
-        if (cfg == null)
-            return;
+        
printPartitionState(c.getConfiguration(CacheConfiguration.class).getName(),0);
+    }
 
+    /**
+     * @param cacheName Cache name.
+     * @param firstParts Count partition for print (will be print first count 
partition).
+     *
+     * Print partitionState for cache.
+     */
+    protected void printPartitionState(String cacheName, int firstParts) {
         StringBuilder sb = new StringBuilder();
 
         sb.append("----preload sync futures----\n");
@@ -725,7 +726,7 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
         for (Ignite ig : G.allGrids()) {
             IgniteKernal k = ((IgniteKernal)ig);
 
-            IgniteInternalFuture<?> syncFut = k.internalCache(cfg.getName())
+            IgniteInternalFuture<?> syncFut = k.internalCache(cacheName)
                 .preloader()
                 .syncFuture();
 
@@ -741,7 +742,7 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
         for (Ignite ig : G.allGrids()) {
             IgniteKernal k = ((IgniteKernal)ig);
 
-            IgniteInternalFuture<?> f = k.internalCache(cfg.getName())
+            IgniteInternalFuture<?> f = k.internalCache(cacheName)
                 .preloader()
                 .rebalanceFuture();
 
@@ -782,9 +783,26 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
                 .append(" grid=").append(g0.name())
                 .append("\n");
 
-            GridDhtPartitionTopology top = dht(cache).topology();
+            IgniteCacheProxy<?, ?> cache = 
g0.context().cache().jcache(cacheName);
+
+            GridDhtCacheAdapter<?, ?> dht = dht(cache);
+
+            GridDhtPartitionTopology top = dht.topology();
+
+            int parts = firstParts == 0 ? cache.context()
+                .config()
+                .getAffinity()
+                .partitions() : firstParts;
+
+            for (int p = 0; p < parts; p++) {
+                AffinityTopologyVersion readyVer = 
dht.context().shared().exchange().readyAffinityVersion();
+
+                Collection<UUID> affNodes = F.nodeIds(dht.context()
+                    .affinity()
+                    .assignment(readyVer)
+                    .idealAssignment()
+                    .get(p));
 
-            for (int p = 0; p < cfg.getAffinity().partitions(); p++) {
                 GridDhtLocalPartition part = top.localPartition(p, 
AffinityTopologyVersion.NONE, false);
 
                 sb.append("local part=");
@@ -794,16 +812,20 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
                 else
                     sb.append(p).append(" is null");
 
-                sb.append("\n");
+                sb.append(" isAffNode=")
+                    .append(affNodes.contains(g0.localNode().id()))
+                    .append("\n");
 
                 for (UUID nodeId : 
F.nodeIds(g0.context().discovery().allNodes())) {
                     if (!nodeId.equals(g0.localNode().id()))
-                        sb.append(" nodeId = ")
+                        sb.append(" nodeId=")
                             .append(nodeId)
                             .append(" part=")
                             .append(p)
                             .append(" state=")
                             .append(top.partitionState(nodeId, p))
+                            .append(" isAffNode=")
+                            .append(affNodes.contains(nodeId))
                             .append("\n");
                 }
             }
@@ -811,7 +833,7 @@ public abstract class GridCommonAbstractTest extends 
GridAbstractTest {
             sb.append("\n");
         }
 
-        log.info("dump partitions state for <" + cfg.getName() + ">:\n" + 
sb.toString());
+        log.info("dump partitions state for <" + cacheName + ">:\n" + 
sb.toString());
     }
 
     /**

Reply via email to