You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vk...@apache.org on 2016/02/05 01:09:53 UTC

[6/7] ignite git commit: IGNITE-2249 - Do not deserialize services on client node

IGNITE-2249 - Do not deserialize services on client node


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

Branch: refs/heads/ignite-2249
Commit: 02fd4b056d694f2bddbc9dd84f9040cb8f0c98e1
Parents: 922d159
Author: Valentin Kulichenko <va...@gmail.com>
Authored: Tue Jan 5 16:19:50 2016 -0800
Committer: Valentin Kulichenko <va...@gmail.com>
Committed: Tue Jan 5 16:19:50 2016 -0800

----------------------------------------------------------------------
 .../service/GridServiceProcessor.java           | 31 ++++++++------------
 .../processors/service/GridServiceProxy.java    |  4 +--
 2 files changed, 14 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/02fd4b05/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
index e51a1fa..e22f498 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java
@@ -545,26 +545,19 @@ public class GridServiceProcessor extends GridProcessorAdapter {
      * @param name Service name.
      * @return Service topology.
      */
-    public Map<UUID, Integer> serviceTopology(String name) {
-        try {
-            ClusterNode node = cache.affinity().mapKeyToNode(name);
-
-            if (node.version().compareTo(ServiceTopologyCallable.SINCE_VER) >= 0) {
-                return ctx.closure().callAsyncNoFailover(
-                    GridClosureCallMode.BALANCE,
-                    new ServiceTopologyCallable(name),
-                    Collections.singletonList(node),
-                    false
-                ).get();
-            }
-            else
-                return serviceTopology(cache, name);
-        }
-        catch (IgniteCheckedException e) {
-            log.error("Failed to get assignments from replicated cache for service: " + name, e);
-
-            return null;
+    public Map<UUID, Integer> serviceTopology(String name) throws IgniteCheckedException {
+        ClusterNode node = cache.affinity().mapKeyToNode(name);
+
+        if (node.version().compareTo(ServiceTopologyCallable.SINCE_VER) >= 0) {
+            return ctx.closure().callAsyncNoFailover(
+                GridClosureCallMode.BALANCE,
+                new ServiceTopologyCallable(name),
+                Collections.singletonList(node),
+                false
+            ).get();
         }
+        else
+            return serviceTopology(cache, name);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/ignite/blob/02fd4b05/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProxy.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProxy.java
index 7a905b2..6bec8ec 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProxy.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProxy.java
@@ -209,7 +209,7 @@ class GridServiceProxy<T> implements Serializable {
          * @param name Service name.
          * @return Node with deployed service or {@code null} if there is no such node.
          */
-        private ClusterNode nodeForService(String name, boolean sticky) {
+        private ClusterNode nodeForService(String name, boolean sticky) throws IgniteCheckedException {
             do { // Repeat if reference to remote node was changed.
                 if (sticky) {
                     ClusterNode curNode = rmtNode.get();
@@ -236,7 +236,7 @@ class GridServiceProxy<T> implements Serializable {
          * @return Local node if it has a given service deployed or randomly chosen remote node,
          * otherwise ({@code null} if given service is not deployed on any node.
          */
-        private ClusterNode randomNodeForService(String name) {
+        private ClusterNode randomNodeForService(String name) throws IgniteCheckedException {
             if (hasLocNode && ctx.service().service(name) != null)
                 return ctx.discovery().localNode();