You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dm...@apache.org on 2015/09/22 18:22:35 UTC

ignite git commit: ignite-1272: hot fix - reloading compute task classes when they are modified by the remote loader.

Repository: ignite
Updated Branches:
  refs/heads/ignite-1272 1942d7585 -> bce4ec1b8


ignite-1272: hot fix - reloading compute task classes when they are modified by the remote loader.


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

Branch: refs/heads/ignite-1272
Commit: bce4ec1b83813d327d4446b8925feb251f632d73
Parents: 1942d75
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Sep 22 19:22:20 2015 +0300
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Sep 22 19:22:20 2015 +0300

----------------------------------------------------------------------
 .../internal/portable/PortableContext.java      | 23 ++++++++++----------
 1 file changed, 11 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/bce4ec1b/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java b/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
index 2ee96b7..ceb05a6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java
@@ -454,22 +454,12 @@ public class PortableContext implements Externalizable {
     public PortableClassDescriptor descriptorForTypeId(boolean userType, int typeId, ClassLoader ldr) {
         assert typeId != GridPortableMarshaller.UNREGISTERED_TYPE_ID;
 
-        //TODO: IGNITE-1358 (uncomment when fixed)
-        //PortableClassDescriptor desc = userType ? userTypes.get(typeId) : predefinedTypes.get(typeId);
-
-        // As a workaround for IGNITE-1358 we always check the predefined map before.
+        //TODO: As a workaround for IGNITE-1358 we always check the predefined map before without checking 'userType'
         PortableClassDescriptor desc = predefinedTypes.get(typeId);
 
         if (desc != null)
             return desc;
 
-        if (userType) {
-            desc = userTypes.get(typeId);
-
-            if (desc != null)
-                return desc;
-        }
-
         Class cls;
 
         try {
@@ -478,6 +468,15 @@ public class PortableContext implements Externalizable {
             desc = descByCls.get(cls);
         }
         catch (ClassNotFoundException e) {
+            // Class might have been defined explicitly by user. Probably it makes sense to put such classes in
+            // specific set.
+            if (userType) {
+                desc = userTypes.get(typeId);
+
+                if (desc != null)
+                    return desc;
+            }
+
             throw new PortableInvalidClassException(e);
         }
         catch (IgniteCheckedException e) {
@@ -1140,4 +1139,4 @@ public class PortableContext implements Externalizable {
             return registered;
         }
     }
-}
\ No newline at end of file
+}