You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by gv...@apache.org on 2018/12/14 10:57:26 UTC
[2/2] ignite git commit: IGNITE-10462: MVCC: Create "PDS 2" test
suite for MVCC mode. This closes #5567.
IGNITE-10462: MVCC: Create "PDS 2" test suite for MVCC mode. This closes #5567.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/5a856aca
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/5a856aca
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/5a856aca
Branch: refs/heads/master
Commit: 5a856acaadd82ee568ca011d160e10bf1967fa3d
Parents: 1eb5750
Author: Andrey V. Mashenkov <an...@gmail.com>
Authored: Fri Dec 14 13:57:16 2018 +0300
Committer: Igor Seliverstov <gv...@gmail.com>
Committed: Fri Dec 14 13:57:16 2018 +0300
----------------------------------------------------------------------
.../IgnitePdsCompressionTestSuite2.java | 2 +-
...erceptorPartitionCounterLocalSanityTest.java | 2 +-
...torPartitionCounterRandomOperationsTest.java | 5 +-
.../cache/GridCacheAbstractFullApiSelfTest.java | 11 +
.../cache/IgniteCacheMvccTxInvokeTest.java | 9 +
.../distributed/CacheExchangeMergeTest.java | 2 +-
...PdsCacheStartStopWithFreqCheckpointTest.java | 2 +
.../IgnitePdsPartitionFilesDestroyTest.java | 19 +-
.../IgnitePdsPartitionsStateRecoveryTest.java | 21 +-
...teRebalanceScheduleResendPartitionsTest.java | 9 +-
...hangeDuringRebalanceOnNonNodeAssignTest.java | 175 ---------------
...lWalModeChangeDuringRebalancingSelfTest.java | 29 ++-
...hangeDuringRebalanceOnNonNodeAssignTest.java | 211 +++++++++++++++++++
...lientAffinityAssignmentWithBaselineTest.java | 9 +-
...tePdsRebalancingOnNotStableTopologyTest.java | 13 +-
.../db/IgnitePdsWholeClusterRestartTest.java | 14 +-
...SlowHistoricalRebalanceSmallHistoryTest.java | 9 +-
.../IgniteNodeStoppedDuringDisableWALTest.java | 7 +-
...lFlushMultiNodeFailoverAbstractSelfTest.java | 6 +-
.../wal/IgniteWalHistoryReservationsTest.java | 14 ++
.../db/wal/WalDeletionArchiveAbstractTest.java | 20 +-
.../db/wal/reader/IgniteWalReaderTest.java | 113 ++++++----
...eContinuousQueryAsyncFilterListenerTest.java | 4 +-
...usQueryFactoryFilterRandomOperationTest.java | 2 +-
.../CacheContinuousQueryOrderingEventTest.java | 3 +-
...acheContinuousQueryRandomOperationsTest.java | 2 +-
.../testframework/junits/GridAbstractTest.java | 13 +-
.../junits/common/GridCommonAbstractTest.java | 9 +
.../junits/multijvm/IgniteProcessProxy.java | 6 +-
.../testsuites/IgnitePdsMvccTestSuite2.java | 97 +++++++++
.../ignite/testsuites/IgnitePdsTestSuite2.java | 127 ++++++-----
.../testsuites/IgnitePdsNativeIoTestSuite2.java | 7 +-
32 files changed, 620 insertions(+), 352 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/compress/src/test/java/org/apache/ignite/testsuites/IgnitePdsCompressionTestSuite2.java
----------------------------------------------------------------------
diff --git a/modules/compress/src/test/java/org/apache/ignite/testsuites/IgnitePdsCompressionTestSuite2.java b/modules/compress/src/test/java/org/apache/ignite/testsuites/IgnitePdsCompressionTestSuite2.java
index 3fb8ac2..4151adf 100644
--- a/modules/compress/src/test/java/org/apache/ignite/testsuites/IgnitePdsCompressionTestSuite2.java
+++ b/modules/compress/src/test/java/org/apache/ignite/testsuites/IgnitePdsCompressionTestSuite2.java
@@ -31,7 +31,7 @@ public class IgnitePdsCompressionTestSuite2 {
TestSuite suite = new TestSuite("Ignite Persistent Store Test Suite 2 (with page compression).");
enableCompressionByDefault();
- IgnitePdsTestSuite2.addRealPageStoreTests(suite);
+ IgnitePdsTestSuite2.addRealPageStoreTests(suite, null);
return suite;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterLocalSanityTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterLocalSanityTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterLocalSanityTest.java
index 0337ab2..9f370dd 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterLocalSanityTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterLocalSanityTest.java
@@ -220,7 +220,7 @@ public class CacheInterceptorPartitionCounterLocalSanityTest extends GridCommonA
Transaction tx = null;
- if (cache.getConfiguration(CacheConfiguration.class).getAtomicityMode() == TRANSACTIONAL && rnd.nextBoolean())
+ if (atomicityMode(cache) == TRANSACTIONAL && rnd.nextBoolean())
tx = ignite.transactions().txStart(txRandomConcurrency(rnd), txRandomIsolation(rnd));
try {
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterRandomOperationsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterRandomOperationsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterRandomOperationsTest.java
index 53d9d72..2f83871 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterRandomOperationsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheInterceptorPartitionCounterRandomOperationsTest.java
@@ -470,7 +470,7 @@ public class CacheInterceptorPartitionCounterRandomOperationsTest extends GridCo
Transaction tx = null;
- CacheAtomicityMode atomicityMode = cache.getConfiguration(CacheConfiguration.class).getAtomicityMode();
+ CacheAtomicityMode atomicityMode = GridCommonAbstractTest.atomicityMode(cache);
if (atomicityMode == TRANSACTIONAL && rnd.nextBoolean())
tx = ignite.transactions().txStart(txRandomConcurrency(rnd), txRandomIsolation(rnd));
@@ -705,8 +705,7 @@ public class CacheInterceptorPartitionCounterRandomOperationsTest extends GridCo
Object key,
boolean rmv
) {
- Collection<ClusterNode> nodes =
- cache.getConfiguration(CacheConfiguration.class).getAtomicityMode() == TRANSACTIONAL ?
+ Collection<ClusterNode> nodes = atomicityMode(cache) == TRANSACTIONAL ?
affinity(cache).mapKeyToPrimaryAndBackups(key) :
Collections.singletonList(affinity(cache).mapKeyToNode(key));
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
index 8c4ea1e..e709bfd 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java
@@ -99,10 +99,12 @@ import org.apache.ignite.services.ServiceContext;
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.transactions.Transaction;
import org.apache.ignite.transactions.TransactionConcurrency;
import org.apache.ignite.transactions.TransactionIsolation;
import org.jetbrains.annotations.Nullable;
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -178,6 +180,15 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract
}
};
+ /** {@inheritDoc} */
+ @Before
+ @Override public void setUp() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-9543");
+
+ super.setUp();
+ }
+
/** Dflt grid. */
protected transient Ignite dfltIgnite;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheMvccTxInvokeTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheMvccTxInvokeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheMvccTxInvokeTest.java
index 6ed5698..e5742ad 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheMvccTxInvokeTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheMvccTxInvokeTest.java
@@ -20,6 +20,8 @@ package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CacheMode;
import org.apache.ignite.configuration.NearCacheConfiguration;
+import org.junit.Ignore;
+import org.junit.Test;
import static org.apache.ignite.cache.CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT;
import static org.apache.ignite.cache.CacheMode.PARTITIONED;
@@ -47,4 +49,11 @@ public class IgniteCacheMvccTxInvokeTest extends IgniteCacheInvokeAbstractTest {
@Override protected NearCacheConfiguration nearConfiguration() {
return null;
}
+
+ /** {@inheritDoc} */
+ @Ignore("https://issues.apache.org/jira/browse/IGNITE-10472")
+ @Test
+ @Override public void testInvokeAllAppliedOnceOnBinaryTypeRegistration() {
+ super.testInvokeAllAppliedOnceOnBinaryTypeRegistration();
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java
index 2ab762d..17770c3 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/CacheExchangeMergeTest.java
@@ -1417,7 +1417,7 @@ public class CacheExchangeMergeTest extends GridCommonAbstractTest {
assertEquals(err, e.getValue(), res.get(e.getKey()));
}
- if (cache.getConfiguration(CacheConfiguration.class).getAtomicityMode() == TRANSACTIONAL) {
+ if (atomicityMode(cache) == TRANSACTIONAL) {
for (TransactionConcurrency concurrency : TransactionConcurrency.values()) {
for (TransactionIsolation isolation : TransactionIsolation.values())
checkNodeCaches(err, node, cache, concurrency, isolation);
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsCacheStartStopWithFreqCheckpointTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsCacheStartStopWithFreqCheckpointTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsCacheStartStopWithFreqCheckpointTest.java
index 9cae83f..f58e110 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsCacheStartStopWithFreqCheckpointTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsCacheStartStopWithFreqCheckpointTest.java
@@ -24,6 +24,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CacheMode;
import org.apache.ignite.cache.CacheRebalanceMode;
import org.apache.ignite.configuration.CacheConfiguration;
@@ -83,6 +84,7 @@ public class IgnitePdsCacheStartStopWithFreqCheckpointTest extends GridCommonAbs
/** {@inheritDoc} */
private CacheConfiguration cacheConfiguration(int cacheIdx) {
return new CacheConfiguration(CACHE_NAME + cacheIdx)
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
.setCacheMode(CacheMode.REPLICATED)
.setBackups(0)
.setRebalanceMode(CacheRebalanceMode.NONE);
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionFilesDestroyTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionFilesDestroyTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionFilesDestroyTest.java
index 1d1a03f..a2a4b0b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionFilesDestroyTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionFilesDestroyTest.java
@@ -43,6 +43,7 @@ import org.apache.ignite.internal.processors.cache.persistence.file.FileIOFactor
import org.apache.ignite.internal.processors.cache.persistence.file.RandomAccessFileIOFactory;
import org.apache.ignite.internal.util.typedef.G;
import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -56,9 +57,6 @@ import static org.apache.ignite.internal.processors.cache.persistence.file.FileP
*/
@RunWith(JUnit4.class)
public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
- /** Cache name. */
- private static final String CACHE = "cache";
-
/** Partitions count. */
private static final int PARTS_CNT = 32;
@@ -85,7 +83,7 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
cfg.setDataStorageConfiguration(dsCfg);
- CacheConfiguration<Object, Object> ccfg = new CacheConfiguration<>(CACHE)
+ CacheConfiguration ccfg = defaultCacheConfiguration()
.setBackups(1)
.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC)
.setAffinity(new RendezvousAffinityFunction(false, PARTS_CNT));
@@ -97,6 +95,9 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
stopAllGrids();
cleanPersistenceDir();
@@ -123,7 +124,7 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
private void loadData(IgniteEx ignite, int keysCnt, int multiplier) {
log.info("Load data: keys=" + keysCnt);
- try (IgniteDataStreamer streamer = ignite.dataStreamer(CACHE)) {
+ try (IgniteDataStreamer streamer = ignite.dataStreamer(DEFAULT_CACHE_NAME)) {
streamer.allowOverwrite(true);
for (int k = 0; k < keysCnt; k++)
@@ -138,7 +139,7 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
private void checkData(IgniteEx ignite, int keysCnt, int multiplier) {
log.info("Check data: " + ignite.name() + ", keys=" + keysCnt);
- IgniteCache<Integer, Integer> cache = ignite.cache(CACHE);
+ IgniteCache<Integer, Integer> cache = ignite.cache(DEFAULT_CACHE_NAME);
for (int k = 0; k < keysCnt; k++)
Assert.assertEquals("node = " + ignite.name() + ", key = " + k, (Integer) (k * multiplier), cache.get(k));
@@ -355,7 +356,7 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
forceCheckpoint();
// Evict arbitrary partition.
- List<GridDhtLocalPartition> parts = crd.cachex(CACHE).context().topology().localPartitions();
+ List<GridDhtLocalPartition> parts = crd.cachex(DEFAULT_CACHE_NAME).context().topology().localPartitions();
for (GridDhtLocalPartition part : parts)
if (part.state() != GridDhtPartitionState.EVICTED) {
part.rent(false).get();
@@ -384,12 +385,12 @@ public class IgnitePdsPartitionFilesDestroyTest extends GridCommonAbstractTest {
private void checkPartitionFiles(IgniteEx ignite, boolean exists) throws IgniteCheckedException {
int evicted = 0;
- GridDhtPartitionTopology top = ignite.cachex(CACHE).context().topology();
+ GridDhtPartitionTopology top = ignite.cachex(DEFAULT_CACHE_NAME).context().topology();
for (int p = 0; p < PARTS_CNT; p++) {
GridDhtLocalPartition part = top.localPartition(p);
- File partFile = partitionFile(ignite, CACHE, p);
+ File partFile = partitionFile(ignite, DEFAULT_CACHE_NAME, p);
if (exists) {
if (part != null && part.state() == GridDhtPartitionState.EVICTED)
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionsStateRecoveryTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionsStateRecoveryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionsStateRecoveryTest.java
index 2eafdc1..9e4398a 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionsStateRecoveryTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsPartitionsStateRecoveryTest.java
@@ -29,6 +29,7 @@ import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.WALMode;
import org.apache.ignite.internal.IgniteEx;
import org.apache.ignite.internal.processors.cache.distributed.dht.topology.GridDhtPartitionTopology;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -40,9 +41,6 @@ import org.junit.runners.JUnit4;
*/
@RunWith(JUnit4.class)
public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest {
- /** Cache name. */
- private static final String CACHE = "cache";
-
/** Partitions count. */
private static final int PARTS_CNT = 32;
@@ -64,7 +62,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
cfg.setDataStorageConfiguration(dsCfg);
- CacheConfiguration<Object, Object> ccfg = new CacheConfiguration<>(CACHE)
+ CacheConfiguration ccfg = defaultCacheConfiguration()
.setBackups(0)
.setRebalanceMode(CacheRebalanceMode.NONE) // Disable rebalance to prevent owning MOVING partitions.
.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC)
@@ -104,7 +102,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
ignite.cluster().active(true);
- IgniteCache<Object, Object> cache = ignite.getOrCreateCache(CACHE);
+ IgniteCache<Object, Object> cache = ignite.cache(DEFAULT_CACHE_NAME);
for (int key = 0; key < 4096; key++)
cache.put(key, key);
@@ -118,7 +116,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
cache.put(key, payload);
}
- GridDhtPartitionTopology topology = ignite.cachex(CACHE).context().topology();
+ GridDhtPartitionTopology topology = ignite.cachex(DEFAULT_CACHE_NAME).context().topology();
Assert.assertFalse(topology.hasMovingPartitions());
@@ -130,7 +128,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
awaitPartitionMapExchange();
- topology = ignite.cachex(CACHE).context().topology();
+ topology = ignite.cachex(DEFAULT_CACHE_NAME).context().topology();
Assert.assertFalse("Node restored moving partitions after join to topology.", topology.hasMovingPartitions());
}
@@ -142,11 +140,14 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
*/
@Test
public void testPartitionsStateConsistencyAfterRecoveryNoCheckpoints() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10603");
+
IgniteEx ignite = startGrid(0);
ignite.cluster().active(true);
- IgniteCache<Object, Object> cache = ignite.getOrCreateCache(CACHE);
+ IgniteCache<Object, Object> cache = ignite.cache(DEFAULT_CACHE_NAME);
forceCheckpoint();
@@ -157,7 +158,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
cache.put(key, payload);
}
- GridDhtPartitionTopology topology = ignite.cachex(CACHE).context().topology();
+ GridDhtPartitionTopology topology = ignite.cachex(DEFAULT_CACHE_NAME).context().topology();
Assert.assertFalse(topology.hasMovingPartitions());
@@ -169,7 +170,7 @@ public class IgnitePdsPartitionsStateRecoveryTest extends GridCommonAbstractTest
awaitPartitionMapExchange();
- topology = ignite.cachex(CACHE).context().topology();
+ topology = ignite.cachex(DEFAULT_CACHE_NAME).context().topology();
Assert.assertFalse("Node restored moving partitions after join to topology.", topology.hasMovingPartitions());
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteRebalanceScheduleResendPartitionsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteRebalanceScheduleResendPartitionsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteRebalanceScheduleResendPartitionsTest.java
index 4966da4..df79ce7 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteRebalanceScheduleResendPartitionsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgniteRebalanceScheduleResendPartitionsTest.java
@@ -27,6 +27,7 @@ import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteDataStreamer;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction;
import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.CacheConfiguration;
@@ -46,6 +47,7 @@ import org.apache.ignite.spi.IgniteSpiException;
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -83,8 +85,8 @@ public class IgniteRebalanceScheduleResendPartitionsTest extends GridCommonAbstr
cfg.setCacheConfiguration(
new CacheConfiguration(DEFAULT_CACHE_NAME)
- .setAffinity(
- new RendezvousAffinityFunction(false, 32))
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
+ .setAffinity(new RendezvousAffinityFunction(false, 32))
.setBackups(1)
);
@@ -116,6 +118,9 @@ public class IgniteRebalanceScheduleResendPartitionsTest extends GridCommonAbstr
*/
@Test
public void test() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
Ignite ig0 = startGrids(3);
ig0.cluster().active(true);
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWacModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWacModeNoChangeDuringRebalanceOnNonNodeAssignTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWacModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
deleted file mode 100644
index 5b28833..0000000
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWacModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * 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.persistence;
-
-import org.apache.ignite.Ignite;
-import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.IgniteDataStreamer;
-import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction;
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.configuration.DataRegionConfiguration;
-import org.apache.ignite.configuration.DataStorageConfiguration;
-import org.apache.ignite.configuration.IgniteConfiguration;
-import org.apache.ignite.internal.IgniteEx;
-import org.apache.ignite.internal.pagemem.wal.WALIterator;
-import org.apache.ignite.internal.pagemem.wal.WALPointer;
-import org.apache.ignite.internal.pagemem.wal.record.MetastoreDataRecord;
-import org.apache.ignite.internal.pagemem.wal.record.WALRecord;
-import org.apache.ignite.internal.processors.cache.persistence.wal.reader.IgniteWalIteratorFactory;
-import org.apache.ignite.internal.util.typedef.internal.U;
-import org.apache.ignite.lang.IgniteBiTuple;
-import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
-import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.JUnit4;
-
-import static java.lang.String.valueOf;
-import static org.apache.ignite.IgniteSystemProperties.IGNITE_DISABLE_WAL_DURING_REBALANCING;
-import static org.apache.ignite.internal.pagemem.wal.record.WALRecord.RecordType.METASTORE_DATA_RECORD;
-import static org.apache.ignite.internal.processors.cache.GridCacheUtils.cacheId;
-import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.DFLT_STORE_DIR;
-
-/**
- *
- */
-@RunWith(JUnit4.class)
-public class LocalWacModeNoChangeDuringRebalanceOnNonNodeAssignTest extends GridCommonAbstractTest {
-
- /** */
- private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
-
- /** */
- private final int NODES = 3;
-
- /** {@inheritDoc} */
- @Override protected IgniteConfiguration getConfiguration(String name) throws Exception {
- IgniteConfiguration cfg = super.getConfiguration(name);
-
- cfg.setConsistentId(name);
-
- cfg.setDiscoverySpi(new TcpDiscoverySpi().setIpFinder(IP_FINDER));
-
- cfg.setDataStorageConfiguration(
- new DataStorageConfiguration()
- .setWalPath(walPath(name))
- .setWalArchivePath(walArchivePath(name))
- .setDefaultDataRegionConfiguration(
- new DataRegionConfiguration()
- .setMaxSize(DataStorageConfiguration.DFLT_DATA_REGION_INITIAL_SIZE)
- .setPersistenceEnabled(true)
- )
- );
-
- cfg.setCacheConfiguration(
- new CacheConfiguration(DEFAULT_CACHE_NAME)
- .setAffinity(
- new RendezvousAffinityFunction(false, 3))
- );
-
- return cfg;
- }
-
- /** {@inheritDoc} */
- @Override protected void beforeTest() throws Exception {
- super.beforeTest();
-
- cleanPersistenceDir();
-
- System.setProperty(IGNITE_DISABLE_WAL_DURING_REBALANCING, "true");
- }
-
- /** {@inheritDoc} */
- @Override protected void afterTest() throws Exception {
- super.afterTest();
-
- System.clearProperty(IGNITE_DISABLE_WAL_DURING_REBALANCING);
- }
-
- /**
- * @throws Exception If failed.
- */
- @Test
- public void test() throws Exception {
- Ignite ig = startGrids(NODES);
-
- ig.cluster().active(true);
-
- int entries = 100_000;
-
- try (IgniteDataStreamer<Integer, Integer> st = ig.dataStreamer(DEFAULT_CACHE_NAME)) {
- st.allowOverwrite(true);
-
- for (int i = 0; i < entries; i++)
- st.addData(i, -i);
- }
-
- IgniteEx ig4 = startGrid(NODES);
-
- ig4.cluster().setBaselineTopology(ig4.context().discovery().topologyVersion());
-
- IgniteWalIteratorFactory iteratorFactory = new IgniteWalIteratorFactory(log);
-
- String name = ig4.name();
-
- try (WALIterator it = iteratorFactory.iterator(walPath(name), walArchivePath(name))) {
- while (it.hasNext()) {
- IgniteBiTuple<WALPointer, WALRecord> tup = it.next();
-
- WALRecord rec = tup.get2();
-
- if (rec.type() == METASTORE_DATA_RECORD) {
- MetastoreDataRecord metastoreDataRecord = (MetastoreDataRecord)rec;
-
- String key = metastoreDataRecord.key();
-
- if (key.startsWith("grp-wal-") &&
- key.contains(valueOf(cacheId(DEFAULT_CACHE_NAME))) &&
- metastoreDataRecord.value() != null)
- fail("WAL was disabled but should not.");
- }
- }
- }
- }
-
- /**
- *
- * @param nodeName Node name.
- * @return Path to WAL work directory.
- * @throws IgniteCheckedException If failed.
- */
- private String walPath(String nodeName) throws IgniteCheckedException {
- String workDir = U.defaultWorkDirectory();
-
- return workDir + "/" + DFLT_STORE_DIR + "/" + nodeName + "/wal";
- }
-
- /**
- *
- * @param nodeName Node name.
- * @return Path to WAL archive directory.
- * @throws IgniteCheckedException If failed.
- */
- private String walArchivePath(String nodeName) throws IgniteCheckedException {
- String workDir = U.defaultWorkDirectory();
-
- return workDir + "/" + DFLT_STORE_DIR + "/" + nodeName + "/walArchive";
- }
-}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeChangeDuringRebalancingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeChangeDuringRebalancingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeChangeDuringRebalancingSelfTest.java
index 094c678..e2b9975 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeChangeDuringRebalancingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeChangeDuringRebalancingSelfTest.java
@@ -30,6 +30,7 @@ import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteSystemProperties;
+import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CacheMode;
import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.CacheConfiguration;
@@ -53,6 +54,7 @@ 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.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -103,11 +105,13 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
cfg.setCacheConfiguration(
new CacheConfiguration(DEFAULT_CACHE_NAME)
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
// Test checks internal state before and after rebalance, so it is configured to be triggered manually
.setRebalanceDelay(-1)
.setBackups(dfltCacheBackupCnt),
new CacheConfiguration(REPL_CACHE)
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
.setRebalanceDelay(-1)
.setCacheMode(CacheMode.REPLICATED)
);
@@ -225,6 +229,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testWalDisabledDuringRebalancing() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
doTestSimple();
}
@@ -233,6 +240,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testWalNotDisabledIfParameterSetToFalse() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
disableWalDuringRebalancing = false;
doTestSimple();
@@ -372,6 +382,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testLocalAndGlobalWalStateInterdependence() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
Ignite ignite = startGrids(3);
ignite.cluster().active(true);
@@ -466,6 +479,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testParallelExchangeDuringRebalance() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
doTestParallelExchange(supplyMessageLatch);
}
@@ -474,6 +490,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testParallelExchangeDuringCheckpoint() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
doTestParallelExchange(fileIOLatch);
}
@@ -530,6 +549,9 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
*/
@Test
public void testDataClearedAfterRestartWithDisabledWal() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
Ignite ignite = startGrid(0);
ignite.cluster().active(true);
@@ -638,7 +660,12 @@ public class LocalWalModeChangeDuringRebalancingSelfTest extends GridCommonAbstr
ThreadLocalRandom rnd = ThreadLocalRandom.current();
do {
- cache.put(rnd.nextInt(keysCnt), rnd.nextInt());
+ try {
+ cache.put(rnd.nextInt(keysCnt), rnd.nextInt());
+ }
+ catch (Exception ex) {
+ MvccFeatureChecker.assertMvccWriteConflict(ex);
+ }
}
while (U.currentTimeMillis() < stopTs);
}, threadCnt, "load-cache");
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeNoChangeDuringRebalanceOnNonNodeAssignTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
new file mode 100644
index 0000000..274deac
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/LocalWalModeNoChangeDuringRebalanceOnNonNodeAssignTest.java
@@ -0,0 +1,211 @@
+/*
+ * 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.persistence;
+
+import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.IgniteDataStreamer;
+import org.apache.ignite.cache.CacheAtomicityMode;
+import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction;
+import org.apache.ignite.configuration.CacheConfiguration;
+import org.apache.ignite.configuration.DataRegionConfiguration;
+import org.apache.ignite.configuration.DataStorageConfiguration;
+import org.apache.ignite.configuration.IgniteConfiguration;
+import org.apache.ignite.internal.IgniteEx;
+import org.apache.ignite.internal.pagemem.wal.WALIterator;
+import org.apache.ignite.internal.pagemem.wal.WALPointer;
+import org.apache.ignite.internal.pagemem.wal.record.MetastoreDataRecord;
+import org.apache.ignite.internal.pagemem.wal.record.WALRecord;
+import org.apache.ignite.internal.processors.cache.persistence.wal.reader.IgniteWalIteratorFactory;
+import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.lang.IgniteBiTuple;
+import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
+import org.junit.Ignore;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+import static java.lang.String.valueOf;
+import static org.apache.ignite.IgniteSystemProperties.IGNITE_DISABLE_WAL_DURING_REBALANCING;
+import static org.apache.ignite.internal.pagemem.wal.record.WALRecord.RecordType.METASTORE_DATA_RECORD;
+import static org.apache.ignite.internal.processors.cache.GridCacheUtils.cacheId;
+import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.DFLT_STORE_DIR;
+
+/**
+ *
+ */
+@RunWith(JUnit4.class)
+public class LocalWalModeNoChangeDuringRebalanceOnNonNodeAssignTest extends GridCommonAbstractTest {
+ /** */
+ private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+
+ /** */
+ private final int NODES = 3;
+
+ /** */
+ private CacheAtomicityMode atomicityMode;
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String name) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(name);
+
+ cfg.setConsistentId(name);
+
+ cfg.setDiscoverySpi(new TcpDiscoverySpi().setIpFinder(IP_FINDER));
+
+ cfg.setDataStorageConfiguration(
+ new DataStorageConfiguration()
+ .setWalPath(walPath(name))
+ .setWalArchivePath(walArchivePath(name))
+ .setDefaultDataRegionConfiguration(
+ new DataRegionConfiguration()
+ .setMaxSize(DataStorageConfiguration.DFLT_DATA_REGION_INITIAL_SIZE)
+ .setPersistenceEnabled(true)
+ )
+ );
+
+ cfg.setCacheConfiguration(
+ new CacheConfiguration(DEFAULT_CACHE_NAME)
+ .setAtomicityMode(atomicityMode)
+ .setAffinity(new RendezvousAffinityFunction(false, 3))
+ );
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void beforeTest() throws Exception {
+ super.beforeTest();
+
+ cleanPersistenceDir();
+
+ System.setProperty(IGNITE_DISABLE_WAL_DURING_REBALANCING, "true");
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ super.afterTest();
+
+ System.clearProperty(IGNITE_DISABLE_WAL_DURING_REBALANCING);
+
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ @Ignore("https://issues.apache.org/jira/browse/IGNITE-10652")
+ @Test
+ public void testAtomic() throws Exception {
+ atomicityMode = CacheAtomicityMode.ATOMIC;
+
+ check();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ @Ignore("https://issues.apache.org/jira/browse/IGNITE-10652")
+ @Test
+ public void testTx() throws Exception {
+ atomicityMode = CacheAtomicityMode.TRANSACTIONAL;
+
+ check();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ @Ignore("https://issues.apache.org/jira/browse/IGNITE-10421")
+ @Test
+ public void testMvcc() throws Exception {
+ atomicityMode = CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT;
+
+ check();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void check() throws Exception {
+ Ignite ig = startGridsMultiThreaded(NODES);
+
+ int entries = 100_000;
+
+ try (IgniteDataStreamer<Integer, Integer> st = ig.dataStreamer(DEFAULT_CACHE_NAME)) {
+ st.allowOverwrite(true);
+
+ for (int i = 0; i < entries; i++)
+ st.addData(i, -i);
+ }
+
+ IgniteEx ig4 = startGrid(NODES);
+
+ ig4.cluster().setBaselineTopology(ig4.context().discovery().topologyVersion());
+
+ IgniteWalIteratorFactory iteratorFactory = new IgniteWalIteratorFactory(log);
+
+ String name = ig4.name();
+
+ try (WALIterator it = iteratorFactory.iterator(walPath(name), walArchivePath(name))) {
+ while (it.hasNext()) {
+ IgniteBiTuple<WALPointer, WALRecord> tup = it.next();
+
+ WALRecord rec = tup.get2();
+
+ if (rec.type() == METASTORE_DATA_RECORD) {
+ MetastoreDataRecord metastoreDataRecord = (MetastoreDataRecord)rec;
+
+ String key = metastoreDataRecord.key();
+
+ if (key.startsWith("grp-wal-") &&
+ key.contains(valueOf(cacheId(DEFAULT_CACHE_NAME))) &&
+ metastoreDataRecord.value() != null)
+ fail("WAL was disabled but should not.");
+ }
+ }
+ }
+ }
+
+ /**
+ *
+ * @param nodeName Node name.
+ * @return Path to WAL work directory.
+ * @throws IgniteCheckedException If failed.
+ */
+ private String walPath(String nodeName) throws IgniteCheckedException {
+ String workDir = U.defaultWorkDirectory();
+
+ return workDir + "/" + DFLT_STORE_DIR + "/" + nodeName + "/wal";
+ }
+
+ /**
+ *
+ * @param nodeName Node name.
+ * @return Path to WAL archive directory.
+ * @throws IgniteCheckedException If failed.
+ */
+ private String walArchivePath(String nodeName) throws IgniteCheckedException {
+ String workDir = U.defaultWorkDirectory();
+
+ return workDir + "/" + DFLT_STORE_DIR + "/" + nodeName + "/walArchive";
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/baseline/ClientAffinityAssignmentWithBaselineTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/baseline/ClientAffinityAssignmentWithBaselineTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/baseline/ClientAffinityAssignmentWithBaselineTest.java
index a404adf..4185361 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/baseline/ClientAffinityAssignmentWithBaselineTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/baseline/ClientAffinityAssignmentWithBaselineTest.java
@@ -49,6 +49,7 @@ import org.apache.ignite.internal.IgniteNodeAttributes;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.apache.ignite.transactions.Transaction;
import org.apache.ignite.transactions.TransactionConcurrency;
@@ -160,6 +161,9 @@ public class ClientAffinityAssignmentWithBaselineTest extends GridCommonAbstract
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10261");
+
stopAllGrids();
cleanPersistenceDir();
@@ -798,7 +802,7 @@ public class ClientAffinityAssignmentWithBaselineTest extends GridCommonAbstract
IgniteCache<Integer, String> cache = ig.cache(cacheName).withAllowAtomicOpsInTx();
- boolean pessimistic = r.nextBoolean();
+ boolean pessimistic = atomicityMode(cache) == CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT || r.nextBoolean();
boolean rollback = r.nextBoolean();
@@ -874,7 +878,8 @@ public class ClientAffinityAssignmentWithBaselineTest extends GridCommonAbstract
IgniteCache<Integer, String> cache1 = ig.cache(cacheName1);
IgniteCache<Integer, String> cache2 = ig.cache(cacheName2);
- boolean pessimistic = r.nextBoolean();
+ boolean pessimistic = atomicityMode(cache1) == CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT ||
+ atomicityMode(cache2) == CacheAtomicityMode.TRANSACTIONAL_SNAPSHOT || r.nextBoolean();
boolean rollback = r.nextBoolean();
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java
index 4fd2b79..0798bcb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsRebalancingOnNotStableTopologyTest.java
@@ -33,6 +33,7 @@ import org.apache.ignite.configuration.DataStorageConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.WALMode;
import org.apache.ignite.internal.util.typedef.internal.U;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.apache.ignite.testframework.junits.multijvm.IgniteProcessProxy;
import org.junit.Test;
@@ -53,14 +54,14 @@ public class IgnitePdsRebalancingOnNotStableTopologyTest extends GridCommonAbstr
/** Cluster size. */
private static final int CLUSTER_SIZE = 5;
- /** */
- private static final String CACHE_NAME = "cache1";
-
/**
* @throws Exception When fails.
*/
@Test
public void test() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
Ignite ex = startGrid(0);
ex.active(true);
@@ -84,7 +85,7 @@ public class IgnitePdsRebalancingOnNotStableTopologyTest extends GridCommonAbstr
startLatch.countDown();
- IgniteCache<Object, Object> cache1 = ex1.cache(CACHE_NAME);
+ IgniteCache<Object, Object> cache1 = ex1.cache(DEFAULT_CACHE_NAME);
int key = keyCnt.get();
@@ -144,7 +145,7 @@ public class IgnitePdsRebalancingOnNotStableTopologyTest extends GridCommonAbstr
checkTopology(CLUSTER_SIZE);
- IgniteCache<Object, Object> cache1 = ex.cache(CACHE_NAME);
+ IgniteCache<Object, Object> cache1 = ex.cache(DEFAULT_CACHE_NAME);
assert keyCnt.get() > 0;
@@ -160,7 +161,7 @@ public class IgnitePdsRebalancingOnNotStableTopologyTest extends GridCommonAbstr
cfg.setActiveOnStart(false);
- CacheConfiguration<Integer, Integer> ccfg = new CacheConfiguration<>(CACHE_NAME);
+ CacheConfiguration ccfg = defaultCacheConfiguration();
ccfg.setPartitionLossPolicy(PartitionLossPolicy.READ_ONLY_SAFE);
ccfg.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC);
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java
index 919888af..8fef389 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsWholeClusterRestartTest.java
@@ -48,9 +48,6 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest {
/** */
private static final int ENTRIES_COUNT = 1_000;
- /** */
- public static final String CACHE_NAME = "cache1";
-
/** {@inheritDoc} */
@Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
IgniteConfiguration cfg = super.getConfiguration(gridName);
@@ -62,9 +59,8 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest {
cfg.setDataStorageConfiguration(memCfg);
- CacheConfiguration ccfg1 = new CacheConfiguration();
+ CacheConfiguration ccfg1 = defaultCacheConfiguration();
- ccfg1.setName(CACHE_NAME);
ccfg1.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
ccfg1.setRebalanceMode(CacheRebalanceMode.SYNC);
ccfg1.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC);
@@ -108,7 +104,7 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest {
awaitPartitionMapExchange();
- try (IgniteDataStreamer<Object, Object> ds = ignite(0).dataStreamer(CACHE_NAME)) {
+ try (IgniteDataStreamer<Object, Object> ds = ignite(0).dataStreamer(DEFAULT_CACHE_NAME)) {
for (int i = 0; i < ENTRIES_COUNT; i++)
ds.addData(i, i);
}
@@ -135,9 +131,9 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest {
Ignite ig = ignite(g);
for (int k = 0; k < ENTRIES_COUNT; k++)
- assertEquals("Failed to read [g=" + g + ", part=" + ig.affinity(CACHE_NAME).partition(k) +
- ", nodes=" + ig.affinity(CACHE_NAME).mapKeyToPrimaryAndBackups(k) + ']',
- k, ig.cache(CACHE_NAME).get(k));
+ assertEquals("Failed to read [g=" + g + ", part=" + ig.affinity(DEFAULT_CACHE_NAME).partition(k) +
+ ", nodes=" + ig.affinity(DEFAULT_CACHE_NAME).mapKeyToPrimaryAndBackups(k) + ']',
+ k, ig.cache(DEFAULT_CACHE_NAME).get(k));
}
}
finally {
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java
index 744b532..073c0c9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/SlowHistoricalRebalanceSmallHistoryTest.java
@@ -22,6 +22,7 @@ import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteDataStreamer;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteSystemProperties;
+import org.apache.ignite.cache.CacheAtomicityMode;
import org.apache.ignite.cache.CacheWriteSynchronizationMode;
import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction;
import org.apache.ignite.cluster.ClusterNode;
@@ -128,8 +129,8 @@ public class SlowHistoricalRebalanceSmallHistoryTest extends GridCommonAbstractT
ig.cluster().active(true);
- ig.getOrCreateCache(new CacheConfiguration<>()
- .setName(SLOW_REBALANCE_CACHE)
+ ig.getOrCreateCache(new CacheConfiguration<>(SLOW_REBALANCE_CACHE)
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
.setAffinity(new RendezvousAffinityFunction(false, 1))
.setBackups(1)
.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC)
@@ -146,8 +147,8 @@ public class SlowHistoricalRebalanceSmallHistoryTest extends GridCommonAbstractT
resetBaselineTopology();
- IgniteCache<Object, Object> anotherCache = ig.getOrCreateCache(new CacheConfiguration<>()
- .setName(REGULAR_CACHE)
+ IgniteCache<Object, Object> anotherCache = ig.getOrCreateCache(new CacheConfiguration<>(REGULAR_CACHE)
+ .setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL)
.setAffinity(new RendezvousAffinityFunction(false, 1))
.setBackups(1)
.setWriteSynchronizationMode(CacheWriteSynchronizationMode.FULL_SYNC)
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteNodeStoppedDuringDisableWALTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteNodeStoppedDuringDisableWALTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteNodeStoppedDuringDisableWALTest.java
index f6dbdd3..23ad2f1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteNodeStoppedDuringDisableWALTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteNodeStoppedDuringDisableWALTest.java
@@ -26,7 +26,6 @@ import java.nio.file.attribute.BasicFileAttributes;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteDataStreamer;
-import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.DataRegionConfiguration;
import org.apache.ignite.configuration.DataStorageConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
@@ -41,6 +40,7 @@ import org.apache.ignite.internal.processors.cache.persistence.filename.PdsFolde
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -81,7 +81,7 @@ public class IgniteNodeStoppedDuringDisableWALTest extends GridCommonAbstractTes
cfg.setAutoActivationEnabled(false);
- cfg.setCacheConfiguration(new CacheConfiguration(DEFAULT_CACHE_NAME));
+ cfg.setCacheConfiguration(defaultCacheConfiguration());
return cfg;
}
@@ -100,6 +100,9 @@ public class IgniteNodeStoppedDuringDisableWALTest extends GridCommonAbstractTes
*/
@Test
public void test() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10421");
+
for (NodeStopPoint nodeStopPoint : NodeStopPoint.values()) {
testStopNodeWithDisableWAL(nodeStopPoint);
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushMultiNodeFailoverAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushMultiNodeFailoverAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushMultiNodeFailoverAbstractSelfTest.java
index bdce9f3..86ff1f3 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushMultiNodeFailoverAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushMultiNodeFailoverAbstractSelfTest.java
@@ -43,6 +43,7 @@ import org.apache.ignite.internal.processors.cache.persistence.file.RandomAccess
import org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager;
import org.apache.ignite.internal.util.lang.GridAbsPredicate;
import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.apache.ignite.transactions.Transaction;
import org.apache.ignite.transactions.TransactionConcurrency;
@@ -72,6 +73,9 @@ public abstract class IgniteWalFlushMultiNodeFailoverAbstractSelfTest extends Gr
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10550");
+
super.beforeTest();
stopAllGrids();
@@ -170,7 +174,7 @@ public abstract class IgniteWalFlushMultiNodeFailoverAbstractSelfTest extends Gr
for (int i = 0; i < ITRS; i++) {
while (!Thread.currentThread().isInterrupted()) {
try (Transaction tx = grid.transactions().txStart(
- TransactionConcurrency.PESSIMISTIC, TransactionIsolation.READ_COMMITTED)) {
+ TransactionConcurrency.PESSIMISTIC, TransactionIsolation.REPEATABLE_READ)) {
cache.put(i, "testValue" + i);
tx.commit();
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalHistoryReservationsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalHistoryReservationsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalHistoryReservationsTest.java
index 8ac10b2..278862e 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalHistoryReservationsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalHistoryReservationsTest.java
@@ -38,6 +38,7 @@ import org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAhea
import org.apache.ignite.internal.util.lang.GridAbsPredicate;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.testframework.GridTestUtils;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.junit.Assert;
import org.junit.Test;
@@ -112,6 +113,8 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest {
*/
@Test
public void testReservedOnExchange() throws Exception {
+ MvccFeatureChecker.failIfNotSupported(MvccFeatureChecker.Feature.ENTRY_LOCK);
+
System.setProperty(IGNITE_PDS_WAL_REBALANCE_THRESHOLD, "0");
final int entryCnt = 10_000;
@@ -258,6 +261,9 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest {
*/
@Test
public void testRemovesArePreloadedIfHistoryIsAvailable() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10551");
+
int entryCnt = 10_000;
IgniteEx ig0 = (IgniteEx)startGrids(2);
@@ -308,6 +314,9 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest {
*/
@Test
public void testNodeIsClearedIfHistoryIsUnavailable() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10551");
+
int entryCnt = 10_000;
IgniteEx ig0 = (IgniteEx)startGrids(2);
@@ -369,6 +378,9 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest {
*/
@Test
public void testWalHistoryPartiallyRemoved() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10551");
+
int entryCnt = 10_000;
IgniteEx ig0 = (IgniteEx)startGrids(2);
@@ -409,6 +421,8 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest {
*/
@Test
public void testNodeLeftDuringExchange() throws Exception {
+ MvccFeatureChecker.failIfNotSupported(MvccFeatureChecker.Feature.ENTRY_LOCK);
+
System.setProperty(IGNITE_PDS_WAL_REBALANCE_THRESHOLD, "0");
final int entryCnt = 10_000;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalDeletionArchiveAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalDeletionArchiveAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalDeletionArchiveAbstractTest.java
index c2296e5..8f79b65 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalDeletionArchiveAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalDeletionArchiveAbstractTest.java
@@ -23,6 +23,8 @@ import java.util.stream.Stream;
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.configuration.CacheConfiguration;
import org.apache.ignite.configuration.DataRegionConfiguration;
import org.apache.ignite.configuration.DataStorageConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
@@ -45,9 +47,6 @@ import static org.apache.ignite.IgniteSystemProperties.IGNITE_PDS_MAX_CHECKPOINT
*/
@RunWith(JUnit4.class)
public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractTest {
- /** */
- public static final String CACHE_NAME = "SomeCache";
-
/**
* Start grid with override default configuration via customConfigurator.
*/
@@ -74,6 +73,13 @@ public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractT
return ignite;
}
+ /** */
+ private CacheConfiguration<Integer, Integer> cacheConfiguration() {
+ CacheConfiguration<Integer, Integer> ccfg = new CacheConfiguration<>(DEFAULT_CACHE_NAME);
+
+ return ccfg.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
+ }
+
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
stopAllGrids();
@@ -141,7 +147,7 @@ public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractT
long allowedThresholdWalArchiveSize = maxWalArchiveSize / 2;
- IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(CACHE_NAME);
+ IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(cacheConfiguration());
//when: put to cache more than 2 MB
for (int i = 0; i < 500; i++)
@@ -179,7 +185,7 @@ public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractT
GridCacheDatabaseSharedManager dbMgr = gridDatabase(ignite);
- IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(CACHE_NAME);
+ IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(cacheConfiguration());
for (int i = 0; i < 500; i++)
cache.put(i, i);
@@ -208,7 +214,7 @@ public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractT
GridCacheDatabaseSharedManager dbMgr = gridDatabase(ignite);
- IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(CACHE_NAME);
+ IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(cacheConfiguration());
//when: put to cache and do checkpoint
int testNumberOfCheckpoint = walHistorySize * 2;
@@ -242,7 +248,7 @@ public abstract class WalDeletionArchiveAbstractTest extends GridCommonAbstractT
GridCacheDatabaseSharedManager dbMgr = gridDatabase(ignite);
- IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(CACHE_NAME);
+ IgniteCache<Integer, Integer> cache = ignite.getOrCreateCache(cacheConfiguration());
//when: put to cache
for (int i = 0; i < 500; i++) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/reader/IgniteWalReaderTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/reader/IgniteWalReaderTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/reader/IgniteWalReaderTest.java
index 9dfd232..8d962d5 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/reader/IgniteWalReaderTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/reader/IgniteWalReaderTest.java
@@ -60,8 +60,10 @@ import org.apache.ignite.internal.pagemem.wal.WALPointer;
import org.apache.ignite.internal.pagemem.wal.record.DataEntry;
import org.apache.ignite.internal.pagemem.wal.record.DataRecord;
import org.apache.ignite.internal.pagemem.wal.record.LazyDataEntry;
+import org.apache.ignite.internal.pagemem.wal.record.LazyMvccDataEntry;
import org.apache.ignite.internal.pagemem.wal.record.TxRecord;
import org.apache.ignite.internal.pagemem.wal.record.UnwrapDataEntry;
+import org.apache.ignite.internal.pagemem.wal.record.UnwrapMvccDataEntry;
import org.apache.ignite.internal.pagemem.wal.record.WALRecord;
import org.apache.ignite.internal.processors.cache.CacheObject;
import org.apache.ignite.internal.processors.cache.GridCacheOperation;
@@ -79,6 +81,7 @@ import org.apache.ignite.logger.NullLogger;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
+import org.apache.ignite.testframework.MvccFeatureChecker;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.apache.ignite.transactions.Transaction;
import org.jetbrains.annotations.NotNull;
@@ -92,7 +95,7 @@ import static java.util.Arrays.fill;
import static org.apache.ignite.events.EventType.EVT_WAL_SEGMENT_ARCHIVED;
import static org.apache.ignite.events.EventType.EVT_WAL_SEGMENT_COMPACTED;
import static org.apache.ignite.internal.pagemem.wal.record.WALRecord.RecordType.DATA_RECORD;
-import static org.apache.ignite.internal.pagemem.wal.record.WALRecord.RecordType.TX_RECORD;
+import static org.apache.ignite.internal.pagemem.wal.record.WALRecord.RecordType.MVCC_DATA_RECORD;
import static org.apache.ignite.internal.processors.cache.GridCacheOperation.CREATE;
import static org.apache.ignite.internal.processors.cache.GridCacheOperation.DELETE;
import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.DFLT_STORE_DIR;
@@ -188,6 +191,9 @@ public class IgniteWalReaderTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ fail("https://issues.apache.org/jira/browse/IGNITE-10558");
+
stopAllGrids();
cleanPersistenceDir();
@@ -272,7 +278,7 @@ public class IgniteWalReaderTest extends GridCommonAbstractTest {
WALRecord walRecord = tup.get2();
- if (walRecord.type() == DATA_RECORD) {
+ if (walRecord.type() == DATA_RECORD || walRecord.type() == MVCC_DATA_RECORD) {
DataRecord record = (DataRecord)walRecord;
for (DataEntry entry : record.writeEntries()) {
@@ -869,6 +875,9 @@ public class IgniteWalReaderTest extends GridCommonAbstractTest {
*/
@Test
public void testRemoveOperationPresentedForDataEntryForAtomic() throws Exception {
+ if (MvccFeatureChecker.forcedMvcc())
+ return;
+
runRemoveOperationTest(CacheAtomicityMode.ATOMIC);
}
@@ -1304,62 +1313,78 @@ public class IgniteWalReaderTest extends GridCommonAbstractTest {
WALRecord walRecord = tup.get2();
- if (walRecord.type() == DATA_RECORD && walRecord instanceof DataRecord) {
- DataRecord dataRecord = (DataRecord)walRecord;
+ WALRecord.RecordType type = walRecord.type();
- if (dataRecordHnd != null)
- dataRecordHnd.apply(dataRecord);
+ //noinspection EnumSwitchStatementWhichMissesCases
+ switch (type) {
+ case DATA_RECORD:
+ // Fallthrough.
+ case MVCC_DATA_RECORD: {
+ assert walRecord instanceof DataRecord;
- List<DataEntry> entries = dataRecord.writeEntries();
+ DataRecord dataRecord = (DataRecord)walRecord;
- for (DataEntry entry : entries) {
- GridCacheVersion globalTxId = entry.nearXidVersion();
+ if (dataRecordHnd != null)
+ dataRecordHnd.apply(dataRecord);
- Object unwrappedKeyObj;
- Object unwrappedValObj;
+ List<DataEntry> entries = dataRecord.writeEntries();
- if (entry instanceof UnwrapDataEntry) {
- UnwrapDataEntry unwrapDataEntry = (UnwrapDataEntry)entry;
- unwrappedKeyObj = unwrapDataEntry.unwrappedKey();
- unwrappedValObj = unwrapDataEntry.unwrappedValue();
- }
- else if (entry instanceof LazyDataEntry) {
- unwrappedKeyObj = null;
- unwrappedValObj = null;
- //can't check value
- }
- else {
- final CacheObject val = entry.value();
+ for (DataEntry entry : entries) {
+ GridCacheVersion globalTxId = entry.nearXidVersion();
- unwrappedValObj = val instanceof BinaryObject ? val : val.value(null, false);
+ Object unwrappedKeyObj;
+ Object unwrappedValObj;
- final CacheObject key = entry.key();
+ if (entry instanceof UnwrapDataEntry || entry instanceof UnwrapMvccDataEntry) {
+ UnwrapDataEntry unwrapDataEntry = (UnwrapDataEntry)entry;
+ unwrappedKeyObj = unwrapDataEntry.unwrappedKey();
+ unwrappedValObj = unwrapDataEntry.unwrappedValue();
+ }
+ else if (entry instanceof LazyDataEntry || entry instanceof LazyMvccDataEntry) {
+ unwrappedKeyObj = null;
+ unwrappedValObj = null;
+ //can't check value
+ }
+ else {
+ final CacheObject val = entry.value();
- unwrappedKeyObj = key instanceof BinaryObject ? key : key.value(null, false);
- }
+ unwrappedValObj = val instanceof BinaryObject ? val : val.value(null, false);
- if (DUMP_RECORDS)
- log.info("//Entry operation " + entry.op() + "; cache Id" + entry.cacheId() + "; " +
- "under transaction: " + globalTxId +
- //; entry " + entry +
- "; Key: " + unwrappedKeyObj +
- "; Value: " + unwrappedValObj);
+ final CacheObject key = entry.key();
+
+ unwrappedKeyObj = key instanceof BinaryObject ? key : key.value(null, false);
+ }
+
+ if (DUMP_RECORDS)
+ log.info("//Entry operation " + entry.op() + "; cache Id" + entry.cacheId() + "; " +
+ "under transaction: " + globalTxId +
+ //; entry " + entry +
+ "; Key: " + unwrappedKeyObj +
+ "; Value: " + unwrappedValObj);
- if (cacheObjHnd != null && (unwrappedKeyObj != null || unwrappedValObj != null))
- cacheObjHnd.apply(unwrappedKeyObj, unwrappedValObj);
+ if (cacheObjHnd != null && (unwrappedKeyObj != null || unwrappedValObj != null))
+ cacheObjHnd.apply(unwrappedKeyObj, unwrappedValObj);
- Integer entriesUnderTx = entriesUnderTxFound.get(globalTxId);
+ Integer entriesUnderTx = entriesUnderTxFound.get(globalTxId);
- entriesUnderTxFound.put(globalTxId, entriesUnderTx == null ? 1 : entriesUnderTx + 1);
+ entriesUnderTxFound.put(globalTxId, entriesUnderTx == null ? 1 : entriesUnderTx + 1);
+ }
}
- }
- else if (walRecord.type() == TX_RECORD && walRecord instanceof TxRecord) {
- TxRecord txRecord = (TxRecord)walRecord;
- GridCacheVersion globalTxId = txRecord.nearXidVersion();
- if (DUMP_RECORDS)
- log.info("//Tx Record, state: " + txRecord.state() +
- "; nearTxVersion" + globalTxId);
+ break;
+
+ case TX_RECORD:
+ // Fallthrough
+ case MVCC_TX_RECORD: {
+ assert walRecord instanceof TxRecord;
+
+ TxRecord txRecord = (TxRecord)walRecord;
+ GridCacheVersion globalTxId = txRecord.nearXidVersion();
+
+ if (DUMP_RECORDS)
+ log.info("//Tx Record, state: " + txRecord.state() +
+ "; nearTxVersion" + globalTxId);
+ }
}
}
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryAsyncFilterListenerTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryAsyncFilterListenerTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryAsyncFilterListenerTest.java
index 393652c..4f31a4c 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryAsyncFilterListenerTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryAsyncFilterListenerTest.java
@@ -523,7 +523,7 @@ public class CacheContinuousQueryAsyncFilterListenerTest extends GridCommonAbstr
try {
assertEquals(val, val0);
- if (cache0.getConfiguration(CacheConfiguration.class).getAtomicityMode() != ATOMIC) {
+ if (atomicityMode(cache0) != ATOMIC) {
boolean committed = false;
while (!committed && !Thread.currentThread().isInterrupted()) {
@@ -679,7 +679,7 @@ public class CacheContinuousQueryAsyncFilterListenerTest extends GridCommonAbstr
try {
assertEquals(val, val0);
- if (cache0.getConfiguration(CacheConfiguration.class).getAtomicityMode() != ATOMIC) {
+ if (atomicityMode(cache0) != ATOMIC) {
boolean committed = false;
while (!committed && !Thread.currentThread().isInterrupted()) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFactoryFilterRandomOperationTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFactoryFilterRandomOperationTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFactoryFilterRandomOperationTest.java
index e0dcf2e..7fadb3b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFactoryFilterRandomOperationTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryFactoryFilterRandomOperationTest.java
@@ -281,7 +281,7 @@ public class CacheContinuousQueryFactoryFilterRandomOperationTest extends CacheC
Transaction tx = null;
- CacheAtomicityMode atomicityMode = cache.getConfiguration(CacheConfiguration.class).getAtomicityMode();
+ CacheAtomicityMode atomicityMode = atomicityMode(cache);
boolean mvccEnabled = atomicityMode == TRANSACTIONAL_SNAPSHOT;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryOrderingEventTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryOrderingEventTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryOrderingEventTest.java
index c8acff1..e1d211a 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryOrderingEventTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryOrderingEventTest.java
@@ -377,8 +377,7 @@ public class CacheContinuousQueryOrderingEventTest extends GridCommonAbstractTes
QueryTestKey key = new QueryTestKey(rnd.nextInt(KEYS));
- boolean startTx = cache.getConfiguration(CacheConfiguration.class).getAtomicityMode() !=
- ATOMIC && rnd.nextBoolean();
+ boolean startTx = atomicityMode(cache) != ATOMIC && rnd.nextBoolean();
Transaction tx = null;
http://git-wip-us.apache.org/repos/asf/ignite/blob/5a856aca/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryRandomOperationsTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryRandomOperationsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryRandomOperationsTest.java
index 7a73579..0329cce 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryRandomOperationsTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryRandomOperationsTest.java
@@ -1224,7 +1224,7 @@ public class CacheContinuousQueryRandomOperationsTest extends GridCommonAbstract
Transaction tx = null;
- CacheAtomicityMode atomicityMode = cache.getConfiguration(CacheConfiguration.class).getAtomicityMode();
+ CacheAtomicityMode atomicityMode = atomicityMode(cache);
boolean mvccEnabled = atomicityMode == TRANSACTIONAL_SNAPSHOT;