Repository: incubator-ignite Updated Branches: refs/heads/ignite-901 e42d197f9 -> af794515b
# ignite-901 Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/af794515 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/af794515 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/af794515 Branch: refs/heads/ignite-901 Commit: af794515b705b59345ab6aec82c3d0d52c7e00f9 Parents: e42d197 Author: sboikov <sboi...@gridgain.com> Authored: Mon Jul 13 16:08:17 2015 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Mon Jul 13 16:08:17 2015 +0300 ---------------------------------------------------------------------- .../processors/cache/GridCacheProcessor.java | 27 +++++++++++++++----- .../IgniteClientReconnectAbstractTest.java | 21 +++++++++++++-- .../IgniteClientReconnectApiExceptionTest.java | 2 +- .../IgniteClientReconnectCacheTest.java | 6 ++--- ...eClientReconnectContinuousProcessorTest.java | 8 +++--- ...IgniteClientReconnectDiscoveryStateTest.java | 2 +- .../internal/IgniteClientReconnectStopTest.java | 3 +-- 7 files changed, 48 insertions(+), 21 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java index 40249d1..652b8cb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java @@ -792,7 +792,8 @@ public class GridCacheProcessor extends GridProcessorAdapter { ctx.marshallerContext().onMarshallerCacheStarted(ctx); marshallerCache().context().preloader().syncFuture().listen(new CIX1<IgniteInternalFuture<?>>() { - @Override public void applyx(IgniteInternalFuture<?> f) throws IgniteCheckedException { + @Override + public void applyx(IgniteInternalFuture<?> f) throws IgniteCheckedException { ctx.marshallerContext().onMarshallerCachePreloaded(ctx); } }); @@ -2819,11 +2820,7 @@ public class GridCacheProcessor extends GridProcessorAdapter { * @return Utility cache. */ public <K, V> IgniteInternalCache<K, V> utilityCache() { - IgniteCacheProxy<K, V> proxy = (IgniteCacheProxy<K, V>)jCacheProxies.get(CU.UTILITY_CACHE_NAME); - - assert proxy != null; - - return proxy.internalProxy(); + return internalCacheEx(CU.UTILITY_CACHE_NAME); } /** @@ -2832,7 +2829,23 @@ public class GridCacheProcessor extends GridProcessorAdapter { * @return Utility cache for atomic data structures. */ public <K, V> IgniteInternalCache<K, V> atomicsCache() { - return cache(CU.ATOMICS_CACHE_NAME); + return internalCacheEx(CU.ATOMICS_CACHE_NAME); + } + + /** + * @param name Cache name. + * @return Cache. + */ + private <K, V> IgniteInternalCache<K, V> internalCacheEx(String name) { + if (ctx.discovery().localNode().isClient()) { + IgniteCacheProxy<K, V> proxy = (IgniteCacheProxy<K, V>)jCacheProxies.get(name); + + assert proxy != null; + + return proxy.internalProxy(); + } + + return internalCache(name); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/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 8fca97c..ac60617 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 @@ -54,6 +54,9 @@ public abstract class IgniteClientReconnectAbstractTest extends GridCommonAbstra private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true); /** */ + private static final long RECONNECT_TIMEOUT = 10_000; + + /** */ protected boolean clientMode; /** {@inheritDoc} */ @@ -78,6 +81,20 @@ public abstract class IgniteClientReconnectAbstractTest extends GridCommonAbstra } /** + * @param latch Latch. + * @throws Exception If failed. + */ + protected void waitReconnectEvent(CountDownLatch latch) throws Exception { + if (!latch.await(RECONNECT_TIMEOUT, MILLISECONDS)) { + log.error("Failed to wait for reconnect event, will dump threads, latch count: " + latch.getCount()); + + U.dumpThreads(log); + + fail("Failed to wait for disconnect/reconnect event."); + } + } + + /** * @return Number of server nodes started before tests. */ protected abstract int serverCount(); @@ -199,7 +216,7 @@ public abstract class IgniteClientReconnectAbstractTest extends GridCommonAbstra srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(disconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(disconnectLatch); if (disconnectedC != null) disconnectedC.run(); @@ -208,7 +225,7 @@ public abstract class IgniteClientReconnectAbstractTest extends GridCommonAbstra clientSpi.writeLatch.countDown(); - assertTrue(reconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(reconnectLatch); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectApiExceptionTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectApiExceptionTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectApiExceptionTest.java index dae1182..925e265 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectApiExceptionTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectApiExceptionTest.java @@ -811,7 +811,7 @@ public class IgniteClientReconnectApiExceptionTest extends IgniteClientReconnect clientSpi.writeLatch.countDown(); - assertTrue(reconnectLatch.await(5000, TimeUnit.MILLISECONDS)); + waitReconnectEvent(reconnectLatch); // Check operation after reconnect working. for (int i = 0; i < futs.size(); i++) { http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/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 d79a43e..e69479b 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 @@ -200,7 +200,7 @@ public class IgniteClientReconnectCacheTest extends IgniteClientReconnectAbstrac srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(disconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(disconnectLatch); IgniteInternalFuture putFut = blockPutRef.get(); @@ -480,7 +480,7 @@ public class IgniteClientReconnectCacheTest extends IgniteClientReconnectAbstrac srvSpi.failNode(client.localNode().id(), null); - assertTrue(disconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(disconnectLatch); afterPut2.countDown(); @@ -488,7 +488,7 @@ public class IgniteClientReconnectCacheTest extends IgniteClientReconnectAbstrac clientSpi.writeLatch.countDown(); - assertTrue(reconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(reconnectLatch); assertTrue(fut.get()); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectContinuousProcessorTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectContinuousProcessorTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectContinuousProcessorTest.java index c63d9a8..2bfdc85b 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectContinuousProcessorTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectContinuousProcessorTest.java @@ -86,7 +86,7 @@ public class IgniteClientReconnectContinuousProcessorTest extends IgniteClientRe srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(reconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(reconnectLatch); client.compute().run(new DummyJob()); @@ -143,7 +143,7 @@ public class IgniteClientReconnectContinuousProcessorTest extends IgniteClientRe srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(reconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(reconnectLatch); locLsnr.latch = new CountDownLatch(1); latch = new CountDownLatch(2); @@ -244,7 +244,7 @@ public class IgniteClientReconnectContinuousProcessorTest extends IgniteClientRe srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(reconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(reconnectLatch); client.events().stopLocalListen(p); @@ -261,8 +261,6 @@ public class IgniteClientReconnectContinuousProcessorTest extends IgniteClientRe assertTrue(lsnr.latch.await(5000, MILLISECONDS)); } - // TODO IGNITE-901 test operations in progress are cancelled. - /** * */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/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 7bd3531..feeebe5 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 @@ -99,7 +99,7 @@ public class IgniteClientReconnectDiscoveryStateTest extends IgniteClientReconne srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(reconnectLatch.await(5000000, TimeUnit.MILLISECONDS)); + waitReconnectEvent(reconnectLatch); topVer += 2; // Client failed and rejoined. http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/af794515/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectStopTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectStopTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectStopTest.java index 49bdae2..98c3d0f 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectStopTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientReconnectStopTest.java @@ -24,7 +24,6 @@ import org.apache.ignite.lang.*; import java.util.concurrent.*; -import static java.util.concurrent.TimeUnit.*; import static org.apache.ignite.events.EventType.*; /** @@ -76,7 +75,7 @@ public class IgniteClientReconnectStopTest extends IgniteClientReconnectAbstract srvSpi.failNode(client.cluster().localNode().id(), null); - assertTrue(disconnectLatch.await(5000, MILLISECONDS)); + waitReconnectEvent(disconnectLatch); IgniteFuture<?> reconnectFut = null;