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();