Repository: ignite Updated Branches: refs/heads/ignite-3477 98366b134 -> 3c99f9099
Fixed issue when stopping node invalidates tx (due to NodeStoppingException from IgniteCacheOffheapManagerImpl.update). Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3c99f909 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3c99f909 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3c99f909 Branch: refs/heads/ignite-3477 Commit: 3c99f9099518854ad997963ae8efd2fc6a2b2c3c Parents: 98366b1 Author: sboikov <[email protected]> Authored: Tue Jan 10 13:37:26 2017 +0300 Committer: sboikov <[email protected]> Committed: Tue Jan 10 13:37:26 2017 +0300 ---------------------------------------------------------------------- .../cache/distributed/dht/GridDhtTxFinishFuture.java | 7 ++++++- .../CacheContinuousQueryFailoverAbstractSelfTest.java | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/3c99f909/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java index 147cbea..1b91703 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxFinishFuture.java @@ -27,6 +27,7 @@ import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteLogger; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.internal.IgniteInternalFuture; +import org.apache.ignite.internal.NodeStoppingException; import org.apache.ignite.internal.cluster.ClusterTopologyCheckedException; import org.apache.ignite.internal.processors.cache.GridCacheFuture; import org.apache.ignite.internal.processors.cache.GridCacheSharedContext; @@ -39,6 +40,7 @@ import org.apache.ignite.internal.util.tostring.GridToStringExclude; import org.apache.ignite.internal.util.tostring.GridToStringInclude; import org.apache.ignite.internal.util.typedef.C1; import org.apache.ignite.internal.util.typedef.F; +import org.apache.ignite.internal.util.typedef.X; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.lang.IgniteUuid; @@ -163,7 +165,10 @@ public final class GridDhtTxFinishFuture<K, V> extends GridCompoundIdentityFutur if (ERR_UPD.compareAndSet(this, null, e)) { tx.setRollbackOnly(); - finish(false); + if (X.hasCause(e, NodeStoppingException.class)) + onComplete(); + else + finish(false); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/3c99f909/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFailoverAbstractSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFailoverAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFailoverAbstractSelfTest.java index afa7005..bd980be 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFailoverAbstractSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFailoverAbstractSelfTest.java @@ -136,6 +136,8 @@ public abstract class CacheContinuousQueryFailoverAbstractSelfTest extends GridC @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { IgniteConfiguration cfg = super.getConfiguration(gridName); + cfg.setLateAffinityAssignment(true); + ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setForceServerMode(true); ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder);
