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

incubator-ignite git commit: #ignite-1109: change check attribute mismatch for hashIdResolver.

Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-1109 e2e3c7f08 -> 2189f30b6


#ignite-1109: change check attribute mismatch for hashIdResolver.


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

Branch: refs/heads/ignite-1109
Commit: 2189f30b654803cc7fe7c63a80827d4624749278
Parents: e2e3c7f
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 14:04:33 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 14:04:33 2015 +0300

----------------------------------------------------------------------
 .../processors/cache/GridCacheAttributes.java       |  8 ++++++--
 .../processors/cache/GridCacheProcessor.java        | 16 ++++++++++++----
 2 files changed, 18 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/2189f30b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAttributes.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAttributes.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAttributes.java
index 78c4722..389c0fe 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAttributes.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAttributes.java
@@ -145,8 +145,12 @@ public class GridCacheAttributes implements Serializable {
     public String affinityHashIdResolverClassName() {
         AffinityFunction aff = ccfg.getAffinity();
 
-        if (aff instanceof RendezvousAffinityFunction)
-            return className(((RendezvousAffinityFunction)aff).getHashIdResolver());
+        if (aff instanceof RendezvousAffinityFunction) {
+            if (((RendezvousAffinityFunction) aff).getHashIdResolver() == null)
+                return null;
+
+            return className(((RendezvousAffinityFunction) aff).getHashIdResolver());
+        }
 
         return null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/2189f30b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index 3ff682e..5254197 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -2414,10 +2414,18 @@ public class GridCacheProcessor extends GridProcessorAdapter {
                     "Affinity key backups", locAttr.affinityKeyBackups(),
                     rmtAttr.affinityKeyBackups(), true);
 
-                CU.checkAttributeMismatch(log, rmtAttr.cacheName(), rmt, "cacheAffinity.hashIdResolver",
-                    "Partitioned cache affinity hash ID resolver class",
-                    locAttr.affinityHashIdResolverClassName(), rmtAttr.affinityHashIdResolverClassName(),
-                    true);
+                String locHashIdResolver = locAttr.affinityHashIdResolverClassName();
+                String rmtHashIdResolver = rmtAttr.affinityHashIdResolverClassName();
+                String defHashIdResolver = AffinityNodeAddressHashResolver.class.getName();
+
+                if (!((locHashIdResolver == null &&  rmtHashIdResolver == null) ||
+                    (locHashIdResolver == null &&  rmtHashIdResolver.equals(defHashIdResolver)) ||
+                    (rmtHashIdResolver == null &&  locHashIdResolver.equals(defHashIdResolver)))) {
+                    CU.checkAttributeMismatch(log, rmtAttr.cacheName(), rmt, "cacheAffinity.hashIdResolver",
+                        "Partitioned cache affinity hash ID resolver class",
+                        locAttr.affinityHashIdResolverClassName(), rmtAttr.affinityHashIdResolverClassName(),
+                        true);
+                }
             }
         }
     }