You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2015/09/03 03:03:55 UTC
[46/50] [abbrv] ignite git commit: IGNITE-264 - Fixing tests.
IGNITE-264 - Fixing tests.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0d6927c2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0d6927c2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0d6927c2
Branch: refs/heads/ignite-264
Commit: 0d6927c2427a8221773d862f93cbf86addfbaeda
Parents: f88defd
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Tue Sep 1 17:45:04 2015 -0700
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Tue Sep 1 17:45:04 2015 -0700
----------------------------------------------------------------------
.../processors/cache/GridCacheAdapter.java | 6 +
.../near/GridNearTxFinishFuture.java | 67 ++++++++--
.../cache/distributed/near/GridNearTxLocal.java | 8 +-
.../dht/GridCacheTxNodeFailureSelfTest.java | 133 ++++++++++++++-----
.../dht/GridNearCacheTxNodeFailureSelfTest.java | 31 +++++
.../near/IgniteCacheNearOnlyTxTest.java | 14 +-
.../IgniteCacheFailoverTestSuite.java | 5 +
7 files changed, 216 insertions(+), 48 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 68749b9..857d0bf 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -4230,6 +4230,9 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
try {
return tFut.get();
}
+ catch (IgniteTxRollbackCheckedException e) {
+ throw e;
+ }
catch (IgniteCheckedException e1) {
tx0.rollbackAsync();
@@ -4250,6 +4253,9 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
try {
return tFut.get();
}
+ catch (IgniteTxRollbackCheckedException e) {
+ throw e;
+ }
catch (IgniteCheckedException e1) {
tx0.rollbackAsync();
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
index d437909..9b9fe86 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxFinishFuture.java
@@ -18,6 +18,8 @@
package org.apache.ignite.internal.processors.cache.distributed.near;
import java.util.Collection;
+import java.util.Collections;
+import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.atomic.AtomicReference;
@@ -377,7 +379,10 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
private void checkBackup() {
assert mappings.size() <= 1;
- for (UUID nodeId : mappings.keySet()) {
+ for (Map.Entry<UUID, GridDistributedTxMapping> entry : mappings.entrySet()) {
+ UUID nodeId = entry.getKey();
+ GridDistributedTxMapping mapping = entry.getValue();
+
Collection<UUID> backups = tx.transactionNodes().get(nodeId);
if (!F.isEmpty(backups)) {
@@ -391,16 +396,19 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
if (backup == null)
return;
- MiniFuture mini = new MiniFuture(backup);
+ MiniFuture mini = new MiniFuture(backup, mapping);
add(mini);
if (backup.isLocal()) {
- if (cctx.tm().txHandler().checkDhtRemoteTxCommitted(tx.xidVersion()))
+ if (cctx.tm().txHandler().checkDhtRemoteTxCommitted(tx.xidVersion())) {
+ readyNearMappingFromBackup(mapping);
+
mini.onDone(tx);
+ }
else
mini.onDone(new IgniteTxRollbackCheckedException("Failed to commit transaction " +
- "(transaction has been rolled back on backup node): " + tx.xidVersion()));
+ "(transaction has been rolled back on backup node): " + tx.xidVersion()));
}
else {
GridDhtTxFinishRequest finishReq = new GridDhtTxFinishRequest(
@@ -440,6 +448,8 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
}
}
}
+ else
+ readyNearMappingFromBackup(mapping);
}
}
@@ -447,14 +457,22 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
*
*/
private boolean needFinishOnePhase() {
+ if (F.isEmpty(tx.mappings()))
+ return false;
+
+ boolean finish = false;
+
for (Integer cacheId : tx.activeCacheIds()) {
GridCacheContext<K, V> cacheCtx = cctx.cacheContext(cacheId);
- if (cacheCtx.isNear())
- return true;
+ if (cacheCtx.isNear()) {
+ finish = true;
+
+ break;
+ }
}
- return false;
+ return finish;
}
/**
@@ -475,6 +493,20 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
}
/**
+ * @param mapping Mapping to finish.
+ */
+ private void readyNearMappingFromBackup(GridDistributedTxMapping mapping) {
+ if (mapping.near()) {
+ GridCacheVersion xidVer = tx.xidVersion();
+
+ mapping.dhtVersion(xidVer, xidVer);
+
+ tx.readyNearLocks(mapping, Collections.<GridCacheVersion>emptyList(), Collections.<GridCacheVersion>emptyList(),
+ Collections.<GridCacheVersion>emptyList());
+ }
+ }
+
+ /**
* @param mappings Mappings.
*/
private void finish(Iterable<GridDistributedTxMapping> mappings) {
@@ -599,9 +631,11 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
/**
* @param backup Backup to check.
+ * @param m Mapping associated with the backup.
*/
- MiniFuture(ClusterNode backup) {
+ MiniFuture(ClusterNode backup, GridDistributedTxMapping m) {
this.backup = backup;
+ this.m = m;
}
/**
@@ -617,7 +651,7 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
public ClusterNode node() {
assert m != null || backup != null;
- return m != null ? m.node() : backup;
+ return backup != null ? backup : m.node();
}
/**
@@ -645,8 +679,14 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
if (log.isDebugEnabled())
log.debug("Remote node left grid while sending or waiting for reply (will fail): " + this);
- // Complete future with tx.
- onDone(tx);
+ if (backup != null) {
+ readyNearMappingFromBackup(m);
+
+ onDone(e);
+ }
+ else
+ // Complete future with tx.
+ onDone(tx);
}
/**
@@ -667,9 +707,10 @@ public final class GridNearTxFinishFuture<K, V> extends GridCompoundIdentityFutu
void onResult(GridDhtTxFinishResponse res) {
assert backup != null;
- if (res.checkCommittedError() != null) {
+ readyNearMappingFromBackup(m);
+
+ if (res.checkCommittedError() != null)
onDone(res.checkCommittedError());
- }
else
onDone(tx);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index dd115215..a4e06c3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -519,9 +519,15 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
GridDistributedTxMapping m = mappings.get(n.id());
- if (m == null)
+ if (m == null) {
m = F.addIfAbsent(mappings, n.id(), new GridDistributedTxMapping(n));
+ m.near(map.near());
+
+ if (map.explicitLock())
+ m.markExplicitLock();
+ }
+
assert m != null;
for (IgniteTxEntry entry : map.entries())
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
index bca3b6f..1135c40 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridCacheTxNodeFailureSelfTest.java
@@ -17,33 +17,47 @@
package org.apache.ignite.internal.processors.cache.distributed.dht;
-import org.apache.ignite.*;
-import org.apache.ignite.cache.*;
-import org.apache.ignite.cache.affinity.*;
-import org.apache.ignite.cluster.*;
-import org.apache.ignite.configuration.*;
-import org.apache.ignite.internal.*;
-import org.apache.ignite.internal.managers.communication.*;
-import org.apache.ignite.internal.util.typedef.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
-import org.apache.ignite.lang.*;
-import org.apache.ignite.plugin.extensions.communication.*;
-import org.apache.ignite.spi.*;
-import org.apache.ignite.spi.communication.tcp.*;
-import org.apache.ignite.testframework.*;
-import org.apache.ignite.testframework.junits.common.*;
-import org.apache.ignite.transactions.*;
-
-import javax.cache.*;
-import java.util.*;
-import java.util.concurrent.*;
-
-import static org.apache.ignite.transactions.TransactionConcurrency.*;
-import static org.apache.ignite.transactions.TransactionIsolation.*;
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteCache;
+import org.apache.ignite.IgniteException;
+import org.apache.ignite.cache.CacheAtomicityMode;
+import org.apache.ignite.cache.CacheMode;
+import org.apache.ignite.cache.affinity.Affinity;
+import org.apache.ignite.cluster.ClusterNode;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.internal.IgniteEx;
+import org.apache.ignite.internal.IgniteInternalFuture;
+import org.apache.ignite.internal.IgniteKernal;
+import org.apache.ignite.internal.managers.communication.GridIoMessage;
+import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
+import org.apache.ignite.internal.processors.cache.distributed.near.GridNearCacheEntry;
+import org.apache.ignite.internal.util.typedef.X;
+import org.apache.ignite.lang.IgniteFuture;
+import org.apache.ignite.lang.IgniteInClosure;
+import org.apache.ignite.plugin.extensions.communication.Message;
+import org.apache.ignite.spi.IgniteSpiException;
+import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
+import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+import org.apache.ignite.transactions.Transaction;
+import org.apache.ignite.transactions.TransactionConcurrency;
+import org.apache.ignite.transactions.TransactionRollbackException;
+
+import javax.cache.CacheException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.concurrent.Callable;
+import java.util.concurrent.CountDownLatch;
+
+import static org.apache.ignite.transactions.TransactionConcurrency.OPTIMISTIC;
+import static org.apache.ignite.transactions.TransactionConcurrency.PESSIMISTIC;
+import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_READ;
/**
* Tests one-phase commit transactions when some of the nodes fail in the middle of the transaction.
*/
+@SuppressWarnings("unchecked")
public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
/**
* @return Grid count.
@@ -56,17 +70,25 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(gridName);
+ cfg.setCacheConfiguration(cacheConfiguration(gridName));
+
+ cfg.setCommunicationSpi(new BanningCommunicationSpi());
+
+ return cfg;
+ }
+
+ /**
+ * @param gridName Grid name.
+ * @return Cache configuration.
+ */
+ protected CacheConfiguration cacheConfiguration(String gridName) {
CacheConfiguration ccfg = new CacheConfiguration();
ccfg.setCacheMode(CacheMode.PARTITIONED);
ccfg.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
ccfg.setBackups(1);
- cfg.setCacheConfiguration(ccfg);
-
- cfg.setCommunicationSpi(new BanningCommunicationSpi());
-
- return cfg;
+ return ccfg;
}
/**
@@ -174,6 +196,10 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
final int key = generateKey(ignite, backup);
+ IgniteEx backupNode = (IgniteEx)backupNode(key, null);
+
+ assertNotNull(backupNode);
+
final CountDownLatch commitLatch = new CountDownLatch(1);
if (!commit) {
@@ -263,7 +289,11 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
fut.get();
// Check there are no hanging transactions.
- assertEquals(0, ((IgniteEx)ignite).context().cache().context().tm().idMapSize());
+ assertEquals(0, ((IgniteEx)ignite(0)).context().cache().context().tm().idMapSize());
+ assertEquals(0, ((IgniteEx)ignite(2)).context().cache().context().tm().idMapSize());
+ assertEquals(0, ((IgniteEx)ignite(3)).context().cache().context().tm().idMapSize());
+
+ dataCheck((IgniteKernal)ignite(0), (IgniteKernal)backupNode, key, commit);
}
finally {
stopAllGrids();
@@ -271,6 +301,49 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
}
/**
+ * @param orig Originating cache.
+ * @param backup Backup cache.
+ * @param key Key being committed and checked.
+ * @param commit Commit or rollback flag.
+ * @throws Exception If check failed.
+ */
+ private void dataCheck(IgniteKernal orig, IgniteKernal backup, int key, boolean commit) throws Exception {
+ GridNearCacheEntry nearEntry = null;
+
+ GridCacheAdapter origCache = orig.internalCache(null);
+
+ if (origCache.isNear())
+ nearEntry = (GridNearCacheEntry)origCache.peekEx(key);
+
+ GridCacheAdapter backupCache = backup.internalCache(null);
+
+ if (backupCache.isNear())
+ backupCache = backupCache.context().near().dht();
+
+ GridDhtCacheEntry dhtEntry = (GridDhtCacheEntry)backupCache.peekEx(key);
+
+ if (commit) {
+ assertNotNull(dhtEntry);
+ assertTrue("dhtEntry=" + dhtEntry, dhtEntry.remoteMvccSnapshot().isEmpty());
+ assertTrue("dhtEntry=" + dhtEntry, dhtEntry.localCandidates().isEmpty());
+ assertEquals(key, backupCache.localPeek(key, null, null));
+
+ if (nearEntry != null) {
+ assertTrue("near=" + nearEntry, nearEntry.remoteMvccSnapshot().isEmpty());
+ assertTrue("near=" + nearEntry, nearEntry.localCandidates().isEmpty());
+
+ // Near peek wil be null since primary node has changed.
+ assertNull("near=" + nearEntry, origCache.localPeek(key, null, null));
+ }
+ }
+ else {
+ assertTrue("near=" + nearEntry + ", hc=" + System.identityHashCode(nearEntry), nearEntry == null);
+ assertTrue("Invalid backup cache entry: " + dhtEntry,
+ dhtEntry == null || dhtEntry.rawGetOrUnmarshal(false) == null);
+ }
+ }
+
+ /**
* @param idx Index.
* @return Communication SPI.
*/
@@ -321,8 +394,6 @@ public class GridCacheTxNodeFailureSelfTest extends GridCommonAbstractTest {
if (!bannedClasses.contains(ioMsg.message().getClass())) {
super.sendMessage(node, msg, ackClosure);
-
- U.debug(">>> Sending message: " + msg);
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
new file mode 100644
index 0000000..5735182
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridNearCacheTxNodeFailureSelfTest.java
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed.dht;
+
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.NearCacheConfiguration;
+
+/**
+ *
+ */
+public class GridNearCacheTxNodeFailureSelfTest extends GridCacheTxNodeFailureSelfTest {
+ /** {@inheritDoc} */
+ @Override protected CacheConfiguration cacheConfiguration(String gridName) {
+ return super.cacheConfiguration(gridName).setNearConfiguration(new NearCacheConfiguration());
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/IgniteCacheNearOnlyTxTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/IgniteCacheNearOnlyTxTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/IgniteCacheNearOnlyTxTest.java
index db55731..1d80ac1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/IgniteCacheNearOnlyTxTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/near/IgniteCacheNearOnlyTxTest.java
@@ -17,6 +17,8 @@
package org.apache.ignite.internal.processors.cache.distributed.near;
+import java.util.ArrayList;
+import java.util.Collection;
import java.util.concurrent.Callable;
import java.util.concurrent.atomic.AtomicInteger;
import org.apache.ignite.Ignite;
@@ -90,11 +92,14 @@ public class IgniteCacheNearOnlyTxTest extends IgniteCacheAbstractTest {
IgniteCache<Integer, Integer> cache0 = ignite(0).cache(null);
IgniteCache<Integer, Integer> cache1 = ignite1.cache(null);
+ Collection<IgniteInternalFuture<?>> futs = new ArrayList<>();
+
for (int i = 0; i < 5; i++) {
log.info("Iteration: " + i);
- GridTestUtils.runMultiThreadedAsync(new Callable<Object>() {
- @Override public Object call() throws Exception {
+ futs.add(GridTestUtils.runMultiThreadedAsync(new Callable<Object>() {
+ @Override
+ public Object call() throws Exception {
int val = idx.getAndIncrement();
IgniteCache<Integer, Integer> cache = ignite1.cache(null);
@@ -104,10 +109,13 @@ public class IgniteCacheNearOnlyTxTest extends IgniteCacheAbstractTest {
return null;
}
- }, 5, "put-thread");
+ }, 5, "put-thread"));
assertEquals(cache0.localPeek(key), cache1.localPeek(key));
}
+
+ for (IgniteInternalFuture<?> fut : futs)
+ fut.get();
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/0d6927c2/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
index ab2374c..eaeb7b3 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
@@ -30,6 +30,8 @@ import org.apache.ignite.internal.processors.cache.distributed.IgniteCacheTxNode
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtAtomicRemoveFailureTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtClientRemoveFailureTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheDhtRemoveFailureTest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridCacheTxNodeFailureSelfTest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.GridNearCacheTxNodeFailureSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.IgniteAtomicLongChangingTopologySelfTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.IgniteCachePutRetryAtomicSelfTest;
import org.apache.ignite.internal.processors.cache.distributed.dht.IgniteCachePutRetryTransactionalSelfTest;
@@ -100,6 +102,9 @@ public class IgniteCacheFailoverTestSuite extends TestSuite {
suite.addTestSuite(IgniteCacheTopologySafeGetSelfTest.class);
suite.addTestSuite(IgniteAtomicLongChangingTopologySelfTest.class);
+ suite.addTestSuite(GridCacheTxNodeFailureSelfTest.class);
+ suite.addTestSuite(GridNearCacheTxNodeFailureSelfTest.class);
+
return suite;
}
}