IGNITE-5529 Stop exchange worker before cancelling exchange futures.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/ddeb935b Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/ddeb935b Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/ddeb935b Branch: refs/heads/ignite-gg-12389 Commit: ddeb935b12009fa969f5971a51a054d429045c8b Parents: 18bbb14 Author: Pavel Kovalenko <jokse...@gmail.com> Authored: Mon Jul 3 11:39:57 2017 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Mon Jul 3 11:39:57 2017 +0300 ---------------------------------------------------------------------- .../cache/GridCachePartitionExchangeManager.java | 15 ++++++++------- .../near/GridCachePartitionedNodeRestartTest.java | 5 ----- 2 files changed, 8 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/ddeb935b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java index 19d99a4..85719b7 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java @@ -522,6 +522,14 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana "Client node disconnected: " + cctx.igniteInstanceName()) : new IgniteInterruptedCheckedException("Node is stopping: " + cctx.igniteInstanceName()); + // Stop exchange worker + U.cancel(exchWorker); + + if (log.isDebugEnabled()) + log.debug("Before joining on exchange worker: " + exchWorker); + + U.join(exchWorker, log); + // Finish all exchange futures. ExchangeFutureSet exchFuts0 = exchFuts; @@ -538,13 +546,6 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana cctx.io().removeOrderedHandler(true, rebalanceTopic(cnt)); } - U.cancel(exchWorker); - - if (log.isDebugEnabled()) - log.debug("Before joining on exchange worker: " + exchWorker); - - U.join(exchWorker, log); - ResendTimeoutObject resendTimeoutObj = pendingResend.getAndSet(null); if (resendTimeoutObj != null) http://git-wip-us.apache.org/repos/asf/ignite/blob/ddeb935b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedNodeRestartTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedNodeRestartTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedNodeRestartTest.java index 1d325a5..d7a0cdd 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedNodeRestartTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/GridCachePartitionedNodeRestartTest.java @@ -56,11 +56,6 @@ public class GridCachePartitionedNodeRestartTest extends GridCacheAbstractNodeRe return cc; } - @Override protected void beforeTest() throws Exception { - fail("https://issues.apache.org/jira/browse/IGNITE-5529"); - } - - /** {@inheritDoc} */ @Override public void testRestart() throws Exception { super.testRestart();