Repository: incubator-ignite Updated Branches: refs/heads/ignite-901 97a62245f -> bfc93128a
# ignite-901 WIP Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/bfc93128 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/bfc93128 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/bfc93128 Branch: refs/heads/ignite-901 Commit: bfc93128ab2286539b03ac7c676c7810607f01ec Parents: 97a6224 Author: sboikov <sboi...@gridgain.com> Authored: Fri Jul 3 14:16:46 2015 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Fri Jul 3 14:16:46 2015 +0300 ---------------------------------------------------------------------- .../java/org/apache/ignite/internal/IgniteKernal.java | 4 ++++ .../internal/processors/cache/GridCacheGateway.java | 4 +++- .../apache/ignite/spi/discovery/tcp/ClientImpl.java | 4 ++-- .../internal/IgniteClientReconnectAbstractTest.java | 2 +- .../internal/IgniteClientReconnectCacheTest.java | 13 +++++++++++++ .../IgniteClientReconnectDiscoveryStateTest.java | 4 +++- 6 files changed, 26 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java index f97a1c4..27f60a8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java @@ -2847,6 +2847,10 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable { } } + public void rejoined() { + + } + /** * */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java index 46674bc..9e0706e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java @@ -25,6 +25,8 @@ import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.lang.*; import org.jetbrains.annotations.*; +import javax.cache.*; + /** * Cache gateway. */ @@ -83,7 +85,7 @@ public class GridCacheGateway<K, V> { else { assert reconnectFut != null; - throw new IgniteClientDisconnectedException(reconnectFut, "Client disconnected,", null); + throw new CacheException(new IgniteClientDisconnectedException(reconnectFut, "Client disconnected,", null)); } } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java index 8246567..578aae8 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java @@ -1382,11 +1382,11 @@ class ClientImpl extends TcpDiscoveryImpl { Collection<ClusterNode> nodes = updateTopologyHistory(topVer, msg); + notifyDiscovery(EVT_NODE_JOINED, topVer, locNode, nodes); + if (disconnected()) notifyDiscovery(EVT_CLIENT_NODE_RECONNECTED, topVer, locNode, nodes); - notifyDiscovery(EVT_NODE_JOINED, topVer, locNode, nodes); - state = ClientImpl.State.CONNECTED; joinErr.set(null);; http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectAbstractTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectAbstractTest.java index 4e9bd0b..318edb8 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectAbstractTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectAbstractTest.java @@ -105,7 +105,7 @@ public abstract class IgniteClientReconnectAbstractTest extends GridCommonAbstra int srvs = serverCount(); if (srvs > 0) - startGridsMultiThreaded(srvs); + startGrids(srvs); int clients = clientCount(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectCacheTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectCacheTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectCacheTest.java index d5f2f5a..6a77a18 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectCacheTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectCacheTest.java @@ -133,6 +133,19 @@ public class IgniteClientReconnectCacheTest extends IgniteClientReconnectAbstrac @Override public Object call() throws Exception { log.info("Start put."); + try { + cache.put(2, 2); + + fail(); + } + catch (CacheException e) { + log.info("Expected exception: " + e); + + IgniteClientDisconnectedException e0 = (IgniteClientDisconnectedException)e.getCause(); + + e0.reconnectFuture().get(); + } + cache.put(2, 2); log.info("Finish put."); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bfc93128/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectDiscoveryStateTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectDiscoveryStateTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectDiscoveryStateTest.java index deffd42..f1019fb 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectDiscoveryStateTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectDiscoveryStateTest.java @@ -60,6 +60,7 @@ public class IgniteClientReconnectDiscoveryStateTest extends IgniteClientReconne for (Map.Entry<Integer, Integer> e : nodeCnt.entrySet()) { Collection<ClusterNode> nodes = cluster.topology(e.getKey()); + assertNotNull("No nodes for topology: " + e.getKey(), nodes); assertEquals((int)e.getValue(), nodes.size()); } @@ -87,7 +88,7 @@ public class IgniteClientReconnectDiscoveryStateTest extends IgniteClientReconne srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(reconnectLatch.await(5000, TimeUnit.MILLISECONDS)); + assertTrue(reconnectLatch.await(5000000, TimeUnit.MILLISECONDS)); topVer += 2; // Client failed and rejoined. @@ -102,6 +103,7 @@ public class IgniteClientReconnectDiscoveryStateTest extends IgniteClientReconne for (Map.Entry<Integer, Integer> e : nodeCnt.entrySet()) { Collection<ClusterNode> nodes = cluster.topology(e.getKey()); + assertNotNull("No nodes for topology: " + e.getKey(), nodes); assertEquals((int)e.getValue(), nodes.size()); }