Repository: incubator-ignite
Updated Branches:
  refs/heads/ignite-836_2 880b59b96 -> d0dac7de1


# IGNITE-831 Fix NPE


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

Branch: refs/heads/ignite-836_2
Commit: d0dac7de1e573ae3870e20adfe18abf61caa84ec
Parents: 5ffaa4c
Author: sevdokimov <sevdoki...@gridgain.com>
Authored: Wed May 6 14:30:53 2015 +0300
Committer: sevdokimov <sevdoki...@gridgain.com>
Committed: Wed May 6 14:43:16 2015 +0300

----------------------------------------------------------------------
 .../spi/discovery/tcp/TcpDiscoverySpi.java      | 28 +++++++++++---------
 1 file changed, 15 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d0dac7de/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 6028901..8051172 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -1766,7 +1766,7 @@ public class TcpDiscoverySpi extends 
TcpDiscoverySpiAdapter implements TcpDiscov
                 log.debug("Discovery notification [node=" + node + ", 
spiState=" + spiState +
                     ", type=" + U.gridEventName(type) + ", topVer=" + topVer + 
']');
 
-            Collection<ClusterNode> top = F.<TcpDiscoveryNode, 
ClusterNode>upcast(ring.visibleNodes());
+            Collection<ClusterNode> top = F.upcast(ring.visibleNodes());
 
             Map<Long, Collection<ClusterNode>> hist = 
updateTopologyHistory(topVer, top);
 
@@ -4522,20 +4522,22 @@ public class TcpDiscoverySpi extends 
TcpDiscoverySpiAdapter implements TcpDiscov
 
                 TcpDiscoveryNode node = ring.node(msg.creatorNodeId());
 
-                try {
-                    Serializable msgObj = marsh.unmarshal(msg.messageBytes(), 
U.gridClassLoader());
+                if (node != null) {
+                    try {
+                        Serializable msgObj = 
marsh.unmarshal(msg.messageBytes(), U.gridClassLoader());
 
-                    
lsnr.onDiscovery(DiscoveryCustomEvent.EVT_DISCOVERY_CUSTOM_EVT,
-                        msg.topologyVersion(),
-                        node,
-                        snapshot,
-                        hist,
-                        msgObj);
+                        
lsnr.onDiscovery(DiscoveryCustomEvent.EVT_DISCOVERY_CUSTOM_EVT,
+                            msg.topologyVersion(),
+                            node,
+                            snapshot,
+                            hist,
+                            msgObj);
 
-                    msg.messageBytes(marsh.marshal(msgObj));
-                }
-                catch (IgniteCheckedException e) {
-                    U.error(log, "Failed to unmarshal discovery custom 
message.", e);
+                        msg.messageBytes(marsh.marshal(msgObj));
+                    }
+                    catch (IgniteCheckedException e) {
+                        U.error(log, "Failed to unmarshal discovery custom 
message.", e);
+                    }
                 }
             }
         }

Reply via email to