http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/MemoryPolicyInitializationTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/MemoryPolicyInitializationTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/MemoryPolicyInitializationTest.java index 842f618..fb1574d 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/MemoryPolicyInitializationTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/MemoryPolicyInitializationTest.java @@ -73,7 +73,7 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { IgniteEx ignite = startGrid(0); - Collection<MemoryPolicy> allMemPlcs = ignite.context().cache().context().database().memoryPolicies(); + Collection<DataRegion> allMemPlcs = ignite.context().cache().context().database().dataRegions(); assertTrue(allMemPlcs.size() == 2); @@ -89,7 +89,7 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { IgniteEx ignite = startGrid(0); - Collection<MemoryPolicy> allMemPlcs = ignite.context().cache().context().database().memoryPolicies(); + Collection<DataRegion> allMemPlcs = ignite.context().cache().context().database().dataRegions(); assertTrue(allMemPlcs.size() == 3); @@ -110,13 +110,13 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { IgniteCacheDatabaseSharedManager dbMgr = ignite.context().cache().context().database(); - Collection<MemoryPolicy> allMemPlcs = dbMgr.memoryPolicies(); + Collection<DataRegion> allMemPlcs = dbMgr.dataRegions(); assertTrue(allMemPlcs.size() == 2); verifyDefaultAndSystemMemoryPolicies(allMemPlcs); - MemoryPolicy dfltMemPlc = U.field(dbMgr, "dfltMemPlc"); + DataRegion dfltMemPlc = U.field(dbMgr, "dfltDataRegion"); assertTrue(dfltMemPlc.config().getMaxSize() == USER_DEFAULT_MEM_PLC_SIZE); } @@ -134,13 +134,13 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { IgniteCacheDatabaseSharedManager dbMgr = ignite.context().cache().context().database(); - Collection<MemoryPolicy> allMemPlcs = dbMgr.memoryPolicies(); + Collection<DataRegion> allMemPlcs = dbMgr.dataRegions(); assertTrue(allMemPlcs.size() == 3); verifyDefaultAndSystemMemoryPolicies(allMemPlcs); - MemoryPolicy dfltMemPlc = U.field(dbMgr, "dfltMemPlc"); + DataRegion dfltMemPlc = U.field(dbMgr, "dfltDataRegion"); assertTrue(dfltMemPlc.config().getMaxSize() == USER_CUSTOM_MEM_PLC_SIZE); } @@ -220,7 +220,7 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { private void verifyCacheMemoryPolicy(IgniteCache cache, String plcName) { GridCacheContext ctx = ((IgniteCacheProxy) cache).context(); - assertEquals(plcName, ctx.memoryPolicy().config().getName()); + assertEquals(plcName, ctx.dataRegion().config().getName()); } /** @@ -278,12 +278,12 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { /** * @param allMemPlcs Collection of all memory policies. */ - private void verifyDefaultAndSystemMemoryPolicies(Collection<MemoryPolicy> allMemPlcs) { + private void verifyDefaultAndSystemMemoryPolicies(Collection<DataRegion> allMemPlcs) { assertTrue("Default memory policy is not presented", isMemoryPolicyPresented(allMemPlcs, DFLT_MEM_PLC_DEFAULT_NAME)); assertTrue("System memory policy is not presented", - isMemoryPolicyPresented(allMemPlcs, IgniteCacheDatabaseSharedManager.SYSTEM_MEMORY_POLICY_NAME)); + isMemoryPolicyPresented(allMemPlcs, IgniteCacheDatabaseSharedManager.SYSTEM_DATA_REGION_NAME)); } /** @@ -303,8 +303,8 @@ public class MemoryPolicyInitializationTest extends GridCommonAbstractTest { * @param memPlcs Collection of memory policies. * @param nameToVerify Excepted name of memory policy. */ - private boolean isMemoryPolicyPresented(Collection<MemoryPolicy> memPlcs, String nameToVerify) { - for (MemoryPolicy memPlc : memPlcs) { + private boolean isMemoryPolicyPresented(Collection<DataRegion> memPlcs, String nameToVerify) { + for (DataRegion memPlc : memPlcs) { if (nameToVerify.equals(memPlc.config().getName())) return true; }
http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsCacheRestoreTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsCacheRestoreTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsCacheRestoreTest.java index 25626f4..577cf9a 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsCacheRestoreTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsCacheRestoreTest.java @@ -21,9 +21,9 @@ import java.util.Arrays; import java.util.List; import org.apache.ignite.IgniteCache; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder; @@ -40,6 +40,9 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { /** */ private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true); + /** Non-persistent data region name. */ + private static final String NO_PERSISTENCE_REGION = "no-persistence-region"; + /** */ private CacheConfiguration[] ccfgs; @@ -55,17 +58,18 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { ccfgs = null; } - MemoryConfiguration memCfg = new MemoryConfiguration(); - memCfg.setPageSize(1024); - memCfg.setDefaultMemoryPolicySize(10 * 1024 * 1024); - - cfg.setMemoryConfiguration(memCfg); - - PersistentStoreConfiguration pCfg = new PersistentStoreConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(10 * 1024 * 1024).setPersistenceEnabled(true)) + .setPageSize(1024) + .setWalMode(WALMode.LOG_ONLY); - pCfg.setWalMode(WALMode.LOG_ONLY); + memCfg.setDataRegionConfigurations(new DataRegionConfiguration() + .setMaxSize(10 * 1024 * 1024) + .setName(NO_PERSISTENCE_REGION) + .setPersistenceEnabled(false)); - cfg.setPersistentStoreConfiguration(pCfg); + cfg.setDataStorageConfiguration(memCfg); return cfg; } @@ -137,14 +141,22 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { IgniteCache<Object, Object> cache2 = ignite(2).cache("c2"); + IgniteCache<Object, Object> cache3 = ignite(2).cache("c3"); + for (Integer key : keys) { assertEquals(key, cache1.get(key)); assertNull(cache2.get(key)); + assertNull(cache3.get(key)); + cache2.put(key, key); assertEquals(key, cache2.get(key)); + + cache3.put(key, key); + + assertEquals(key, cache3.get(key)); } List<Integer> nearKeys = nearKeys(cache1, 10, 0); @@ -152,6 +164,10 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { for (Integer key : nearKeys) { assertNull(cache1.get(key)); assertNull(cache2.get(key)); + assertNull(cache3.get(key)); + + cache3.put(key, key); + assertEquals(key, cache3.get(key)); cache2.put(key, key); assertEquals(key, cache2.get(key)); @@ -165,6 +181,8 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { awaitPartitionMapExchange(); for (Integer key : nearKeys) { + assertEquals(key, cache3.get(key)); + assertEquals(key, cache2.get(key)); assertEquals(key, cache1.get(key)); @@ -186,10 +204,13 @@ public class IgnitePdsCacheRestoreTest extends GridCommonAbstractTest { * @return Configurations set 1. */ private CacheConfiguration[] configurations2() { - CacheConfiguration[] ccfgs = new CacheConfiguration[2]; + CacheConfiguration[] ccfgs = new CacheConfiguration[3]; ccfgs[0] = cacheConfiguration("c1"); ccfgs[1] = cacheConfiguration("c2"); + ccfgs[2] = cacheConfiguration("c3"); + + ccfgs[2].setDataRegionName(NO_PERSISTENCE_REGION); return ccfgs; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsMultiNodePutGetRestartTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsMultiNodePutGetRestartTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsMultiNodePutGetRestartTest.java index b8db802..615e108 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsMultiNodePutGetRestartTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsMultiNodePutGetRestartTest.java @@ -30,9 +30,10 @@ import org.apache.ignite.cache.query.SqlFieldsQuery; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; @@ -40,7 +41,6 @@ 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.apache.ignite.configuration.MemoryConfiguration; import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.DFLT_STORE_DIR; @@ -61,18 +61,12 @@ public class IgnitePdsMultiNodePutGetRestartTest extends GridCommonAbstractTest @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { IgniteConfiguration cfg = super.getConfiguration(gridName); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(100 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(100 * 1024 * 1024); - memPlcCfg.setMaxSize(100 * 1024 * 1024); - - dbCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - dbCfg.setMemoryPolicies(memPlcCfg); - - cfg.setMemoryConfiguration(dbCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration ccfg = new CacheConfiguration(CACHE_NAME); @@ -86,7 +80,6 @@ public class IgnitePdsMultiNodePutGetRestartTest extends GridCommonAbstractTest cfg.setCacheConfiguration(ccfg); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration()); cfg.setDiscoverySpi(new TcpDiscoverySpi().setIpFinder(IP_FINDER)); cfg.setMarshaller(null); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionDuringPartitionClearTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionDuringPartitionClearTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionDuringPartitionClearTest.java index c1bec35..3dfdc57 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionDuringPartitionClearTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionDuringPartitionClearTest.java @@ -25,10 +25,9 @@ import org.apache.ignite.cache.CacheRebalanceMode; import org.apache.ignite.cache.CacheWriteSynchronizationMode; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.IgniteInternalFuture; @@ -60,26 +59,12 @@ public class IgnitePdsPageEvictionDuringPartitionClearTest extends GridCommonAbs cfg.setCacheConfiguration(ccfg); // Intentionally set small page cache size. + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(70 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setInitialSize(70 * 1024 * 1024); - memPlcCfg.setMaxSize(70 * 1024 * 1024); - - memPlcCfg.setName("dfltMemPlc"); - - MemoryConfiguration memCfg = new MemoryConfiguration(); - - memCfg.setMemoryPolicies(memPlcCfg); - - memCfg.setDefaultMemoryPolicyName(memPlcCfg.getName()); - - cfg.setMemoryConfiguration(memCfg); - - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalMode(WALMode.LOG_ONLY) - ); + cfg.setDataStorageConfiguration(memCfg); return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionTest.java index 13cd8b4..47d0cb2 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsPageEvictionTest.java @@ -27,10 +27,10 @@ import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.cache.query.SqlFieldsQuery; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.CacheConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.internal.S; import org.apache.ignite.internal.util.typedef.internal.U; @@ -58,22 +58,14 @@ public class IgnitePdsPageEvictionTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { IgniteConfiguration cfg = super.getConfiguration(gridName); - MemoryConfiguration memCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(50 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY) + .setPageSize(1024) + .setConcurrencyLevel(Runtime.getRuntime().availableProcessors() * 4); - memCfg.setConcurrencyLevel(Runtime.getRuntime().availableProcessors() * 4); - - memCfg.setPageSize(1024); - - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(50 * 1024 * 1024); - memPlcCfg.setMaxSize(50 * 1024 * 1024); - - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration<DbKey, DbValue> ccfg = new CacheConfiguration<>(CACHE_NAME); @@ -84,8 +76,6 @@ public class IgnitePdsPageEvictionTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration()); - cfg.setDiscoverySpi( new TcpDiscoverySpi() .setIpFinder(IP_FINDER) http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/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 546a87a..893ecb5 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 @@ -28,10 +28,10 @@ import org.apache.ignite.cache.CacheWriteSynchronizationMode; import org.apache.ignite.cache.PartitionLossPolicy; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.apache.ignite.testframework.junits.multijvm.IgniteProcessProxy; @@ -167,23 +167,13 @@ public class IgnitePdsRebalancingOnNotStableTopologyTest extends GridCommonAbstr cfg.setCacheConfiguration(ccfg); - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setCheckpointingFrequency(CHECKPOINT_FREQUENCY) - ); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(200 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY) + .setCheckpointFrequency(CHECKPOINT_FREQUENCY); - MemoryConfiguration memCfg = new MemoryConfiguration(); - - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(200 * 1024 * 1024); - memPlcCfg.setMaxSize(200 * 1024 * 1024); - - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(memCfg); return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java index 7e8cfac..f3aee08 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/IgnitePdsTransactionsHangTest.java @@ -32,10 +32,9 @@ import org.apache.ignite.cache.CacheWriteSynchronizationMode; import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.TransactionConfiguration; import org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager; import org.apache.ignite.internal.util.typedef.internal.U; @@ -123,26 +122,21 @@ public class IgnitePdsTransactionsHangTest extends GridCommonAbstractTest { cfg.setTransactionConfiguration(txCfg); - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalHistorySize(1) - .setCheckpointingFrequency(CHECKPOINT_FREQUENCY) - ); + DataRegionConfiguration memPlcCfg = new DataRegionConfiguration(); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); + memPlcCfg.setName("dfltDataRegion"); memPlcCfg.setInitialSize(PAGE_CACHE_SIZE * 1024 * 1024); memPlcCfg.setMaxSize(PAGE_CACHE_SIZE * 1024 * 1024); + memPlcCfg.setPersistenceEnabled(true); - MemoryConfiguration memCfg = new MemoryConfiguration(); - - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); + DataStorageConfiguration memCfg = new DataStorageConfiguration(); + memCfg.setDefaultDataRegionConfiguration(memPlcCfg); + memCfg.setWalHistorySize(1); + memCfg.setCheckpointFrequency(CHECKPOINT_FREQUENCY); memCfg.setPageSize(PAGE_SIZE * 1024); - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(memCfg); return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/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 df5bfdf..91380f0 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 @@ -28,10 +28,9 @@ import org.apache.ignite.cache.CacheRebalanceMode; import org.apache.ignite.cache.CacheWriteSynchronizationMode; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.spi.checkpoint.noop.NoopCheckpointSpi; @@ -56,18 +55,12 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { IgniteConfiguration cfg = super.getConfiguration(gridName); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(100 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(100 * 1024 * 1024); - memPlcCfg.setMaxSize(100 * 1024 * 1024); - - dbCfg.setMemoryPolicies(memPlcCfg); - dbCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(dbCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration ccfg1 = new CacheConfiguration(); @@ -85,11 +78,6 @@ public class IgnitePdsWholeClusterRestartTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg1); - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalMode(WALMode.LOG_ONLY) - ); - cfg.setConsistentId(gridName); return cfg; http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/DefaultPageSizeBackwardsCompatibilityTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/DefaultPageSizeBackwardsCompatibilityTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/DefaultPageSizeBackwardsCompatibilityTest.java index e577886..9e01f7b 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/DefaultPageSizeBackwardsCompatibilityTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/DefaultPageSizeBackwardsCompatibilityTest.java @@ -23,10 +23,9 @@ import org.apache.ignite.cache.CacheAtomicityMode; import org.apache.ignite.cache.CacheWriteSynchronizationMode; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder; @@ -58,20 +57,20 @@ public class DefaultPageSizeBackwardsCompatibilityTest extends GridCommonAbstrac TcpDiscoverySpi discoverySpi = (TcpDiscoverySpi)cfg.getDiscoverySpi(); discoverySpi.setIpFinder(IP_FINDER); - MemoryConfiguration memCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration(); if (set2kPageSize) memCfg.setPageSize(2048); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); + DataRegionConfiguration memPlcCfg = new DataRegionConfiguration(); memPlcCfg.setMaxSize(100 * 1000 * 1000); + memPlcCfg.setName("dfltDataRegion"); + memPlcCfg.setPersistenceEnabled(true); - memPlcCfg.setName("dfltMemPlc"); + memCfg.setDefaultDataRegionConfiguration(memPlcCfg); + memCfg.setCheckpointFrequency(3_000); - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration ccfg1 = new CacheConfiguration(); @@ -82,8 +81,6 @@ public class DefaultPageSizeBackwardsCompatibilityTest extends GridCommonAbstrac cfg.setCacheConfiguration(ccfg1); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration().setCheckpointingFrequency(3_000)); - cfg.setConsistentId(gridName); return cfg; http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCacheIntegrationTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCacheIntegrationTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCacheIntegrationTest.java index d36894f..7d51b46 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCacheIntegrationTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCacheIntegrationTest.java @@ -31,10 +31,9 @@ import org.apache.ignite.cache.query.SqlFieldsQuery; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.BinaryConfiguration; import org.apache.ignite.configuration.CacheConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.processors.cache.GridCacheAdapter; @@ -65,25 +64,13 @@ public class IgnitePdsCacheIntegrationTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { IgniteConfiguration cfg = super.getConfiguration(gridName); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(100 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY) + .setConcurrencyLevel(Runtime.getRuntime().availableProcessors() * 4); - dbCfg.setConcurrencyLevel(Runtime.getRuntime().availableProcessors() * 4); - - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(100 * 1024 * 1024); - memPlcCfg.setMaxSize(100 * 1024 * 1024); - - dbCfg.setMemoryPolicies(memPlcCfg); - dbCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalMode(WALMode.LOG_ONLY) - ); - - cfg.setMemoryConfiguration(dbCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration ccfg = new CacheConfiguration(CACHE_NAME); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCheckpointSimulationWithRealCpDisabledTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCheckpointSimulationWithRealCpDisabledTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCheckpointSimulationWithRealCpDisabledTest.java index b4c32d8..5ae8969 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCheckpointSimulationWithRealCpDisabledTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsCheckpointSimulationWithRealCpDisabledTest.java @@ -37,9 +37,9 @@ import java.nio.ByteOrder; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.cache.CacheRebalanceMode; import org.apache.ignite.configuration.CacheConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.IgniteInternalFuture; @@ -106,15 +106,12 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom cfg.setCacheConfiguration(ccfg); - MemoryConfiguration dbCfg = new MemoryConfiguration(); - - cfg.setMemoryConfiguration(dbCfg); - - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setCheckpointingFrequency(500) + cfg.setDataStorageConfiguration( + new DataStorageConfiguration() + .setCheckpointFrequency(500) .setWalMode(WALMode.LOG_ONLY) .setAlwaysWriteFullPages(true) + .setDefaultDataRegionConfiguration(new DataRegionConfiguration().setPersistenceEnabled(true)) ); TcpDiscoverySpi discoSpi = new TcpDiscoverySpi(); @@ -163,7 +160,7 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom // Otherwise we will violate page store integrity rules. ig.cache(cacheName).put(0, 0); - PageMemory mem = shared.database().memoryPolicy(null).pageMemory(); + PageMemory mem = shared.database().dataRegion(null).pageMemory(); IgniteBiTuple<Map<FullPageId, Integer>, WALPointer> res; @@ -192,7 +189,7 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom dbMgr.enableCheckpoints(false).get(); - mem = shared.database().memoryPolicy(null).pageMemory(); + mem = shared.database().dataRegion(null).pageMemory(); verifyReads(res.get1(), mem, res.get2(), shared.wal()); } @@ -214,7 +211,7 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom // Disable integrated checkpoint thread. dbMgr.enableCheckpoints(false); - PageMemory mem = shared.database().memoryPolicy(null).pageMemory(); + PageMemory mem = shared.database().dataRegion(null).pageMemory(); IgniteWriteAheadLogManager wal = shared.wal(); @@ -415,7 +412,7 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom int cacheId = sharedCtx.cache().cache(cacheName).context().cacheId(); GridCacheDatabaseSharedManager db = (GridCacheDatabaseSharedManager)sharedCtx.database(); - PageMemory pageMem = sharedCtx.database().memoryPolicy(null).pageMemory(); + PageMemory pageMem = sharedCtx.database().dataRegion(null).pageMemory(); IgniteWriteAheadLogManager wal = sharedCtx.wal(); db.enableCheckpoints(false).get(); @@ -520,7 +517,7 @@ public class IgnitePdsCheckpointSimulationWithRealCpDisabledTest extends GridCom // Disable integrated checkpoint thread. dbMgr.enableCheckpoints(false); - PageMemoryEx mem = (PageMemoryEx) dbMgr.memoryPolicy(null).pageMemory(); + PageMemoryEx mem = (PageMemoryEx) dbMgr.dataRegion(null).pageMemory(); ig.context().cache().context().database().checkpointReadLock(); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsEvictionTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsEvictionTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsEvictionTest.java index a9b0892..47a4b7b 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsEvictionTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsEvictionTest.java @@ -24,10 +24,10 @@ import java.util.concurrent.Callable; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.DataPageEvictionMode; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.IgniteInternalFuture; import org.apache.ignite.internal.pagemem.FullPageId; @@ -69,9 +69,7 @@ public class IgnitePdsEvictionTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { final IgniteConfiguration cfg = super.getConfiguration(gridName); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration()); - - cfg.setMemoryConfiguration(createDbConfig()); + cfg.setDataStorageConfiguration(createDbConfig()); cfg.setCacheConfiguration(new CacheConfiguration<>(cacheName)); @@ -81,19 +79,20 @@ public class IgnitePdsEvictionTest extends GridCommonAbstractTest { /** * @return DB config. */ - private MemoryConfiguration createDbConfig() { - final MemoryConfiguration memCfg = new MemoryConfiguration(); + private DataStorageConfiguration createDbConfig() { + final DataStorageConfiguration memCfg = new DataStorageConfiguration(); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); + DataRegionConfiguration memPlcCfg = new DataRegionConfiguration(); memPlcCfg.setInitialSize(MEMORY_LIMIT); memPlcCfg.setMaxSize(MEMORY_LIMIT); memPlcCfg.setPageEvictionMode(DataPageEvictionMode.RANDOM_LRU); - memPlcCfg.setName("dfltMemPlc"); + memPlcCfg.setName("dfltDataRegion"); + memPlcCfg.setPersistenceEnabled(true); memCfg.setPageSize(PAGE_SIZE); memCfg.setConcurrencyLevel(NUMBER_OF_SEGMENTS); - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); + memCfg.setDefaultDataRegionConfiguration(memPlcCfg); + memCfg.setWalMode(WALMode.LOG_ONLY); return memCfg; } @@ -290,7 +289,7 @@ public class IgnitePdsEvictionTest extends GridCommonAbstractTest { final IgniteCacheDatabaseSharedManager db = sharedCtx.database(); - return db.memoryPolicy(null).pageMemory(); + return db.dataRegion(null).pageMemory(); } /** http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsNoActualWalHistoryTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsNoActualWalHistoryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsNoActualWalHistoryTest.java index 1779fce..61f92c5 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsNoActualWalHistoryTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsNoActualWalHistoryTest.java @@ -27,9 +27,9 @@ import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager; @@ -59,19 +59,19 @@ public class IgnitePdsNoActualWalHistoryTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration dbCfg = new DataStorageConfiguration(); dbCfg.setPageSize(4 * 1024); - cfg.setMemoryConfiguration(dbCfg); + cfg.setDataStorageConfiguration(dbCfg); - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalSegmentSize(4 * 1024 * 1024) - .setWalHistorySize(2) - .setWalSegments(10) - .setWalMode(WALMode.LOG_ONLY) - ); + dbCfg.setWalSegmentSize(4 * 1024 * 1024) + .setWalHistorySize(2) + .setWalSegments(10) + .setWalMode(WALMode.LOG_ONLY) + .setDefaultDataRegionConfiguration(new DataRegionConfiguration() + .setMaxSize(100 * 1024 * 1024) + .setPersistenceEnabled(true)); cfg.setMarshaller(null); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsThreadInterruptionTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsThreadInterruptionTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsThreadInterruptionTest.java index 2a00768..4b55aed 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsThreadInterruptionTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/file/IgnitePdsThreadInterruptionTest.java @@ -17,22 +17,20 @@ package org.apache.ignite.internal.processors.cache.persistence.db.file; +import java.util.concurrent.atomic.AtomicReference; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.IgniteCheckedException; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.processors.cache.persistence.file.AsyncFileIOFactory; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import org.jsr166.ThreadLocalRandom8; -import java.util.concurrent.atomic.AtomicReference; - import static org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.DFLT_STORE_DIR; /** @@ -59,9 +57,7 @@ public class IgnitePdsThreadInterruptionTest extends GridCommonAbstractTest { @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { final IgniteConfiguration cfg = super.getConfiguration(gridName); - cfg.setPersistentStoreConfiguration(storeConfiguration()); - - cfg.setMemoryConfiguration(memoryConfiguration()); + cfg.setDataStorageConfiguration(memoryConfiguration()); cfg.setCacheConfiguration(new CacheConfiguration<>(cacheName)); @@ -69,36 +65,19 @@ public class IgnitePdsThreadInterruptionTest extends GridCommonAbstractTest { } /** - * @return Store config. - */ - private PersistentStoreConfiguration storeConfiguration() { - PersistentStoreConfiguration cfg = new PersistentStoreConfiguration(); - - cfg.setWalMode(WALMode.LOG_ONLY); - - cfg.setWalFsyncDelayNanos(0); - - cfg.setFileIOFactory(new AsyncFileIOFactory()); - - return cfg; - } - - /** * @return Memory config. */ - private MemoryConfiguration memoryConfiguration() { - final MemoryConfiguration memCfg = new MemoryConfiguration(); - - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - // memPlcCfg.setPageEvictionMode(RANDOM_LRU); TODO Fix NPE on start. - memPlcCfg.setName("dfltMemPlc"); - - memCfg.setPageSize(PAGE_SIZE); - memCfg.setConcurrencyLevel(1); - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - return memCfg; + private DataStorageConfiguration memoryConfiguration() { + return new DataStorageConfiguration() + .setDefaultDataRegionConfiguration(new DataRegionConfiguration() + .setName("dfltMemPlc") + .setPersistenceEnabled(true) + /*.setPageEvictionMode(DataPageEvictionMode.RANDOM_LRU) TODO: fix NPE on start */) + .setPageSize(PAGE_SIZE) + .setConcurrencyLevel(1) + .setWalMode(WALMode.LOG_ONLY) + .setWalFsyncDelayNanos(0) + .setFileIOFactory(new AsyncFileIOFactory()); } /** http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/filename/IgniteUidAsConsistentIdMigrationTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/filename/IgniteUidAsConsistentIdMigrationTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/filename/IgniteUidAsConsistentIdMigrationTest.java index fe7e4df..1f322de 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/filename/IgniteUidAsConsistentIdMigrationTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/filename/IgniteUidAsConsistentIdMigrationTest.java @@ -27,10 +27,9 @@ import java.util.regex.Pattern; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.IgniteCheckedException; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.internal.processors.cache.persistence.filename.PdsConsistentIdProcessor; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.testframework.GridStringLogger; @@ -129,7 +128,7 @@ public class IgniteUidAsConsistentIdMigrationTest extends GridCommonAbstractTest if (configuredConsistentId != null) cfg.setConsistentId(configuredConsistentId); - final PersistentStoreConfiguration psCfg = new PersistentStoreConfiguration(); + final DataStorageConfiguration dsCfg = new DataStorageConfiguration(); if (placeStorageInTemp) { final File tempDir = new File(System.getProperty("java.io.tmpdir")); @@ -138,19 +137,16 @@ public class IgniteUidAsConsistentIdMigrationTest extends GridCommonAbstractTest pstWalStoreCustomPath = new File(tempDir, "WalStore"); pstWalArchCustomPath = new File(tempDir, "WalArchive"); - psCfg.setPersistentStorePath(pstStoreCustomPath.getAbsolutePath()); - psCfg.setWalStorePath(pstWalStoreCustomPath.getAbsolutePath()); - psCfg.setWalArchivePath(pstWalArchCustomPath.getAbsolutePath()); + dsCfg.setStoragePath(pstStoreCustomPath.getAbsolutePath()); + dsCfg.setWalPath(pstWalStoreCustomPath.getAbsolutePath()); + dsCfg.setWalArchivePath(pstWalArchCustomPath.getAbsolutePath()); } - cfg.setPersistentStoreConfiguration(psCfg); + dsCfg.setDefaultDataRegionConfiguration(new DataRegionConfiguration() + .setMaxSize(32 * 1024 * 1024) + .setPersistenceEnabled(true)); - final MemoryConfiguration memCfg = new MemoryConfiguration(); - final MemoryPolicyConfiguration memPolCfg = new MemoryPolicyConfiguration(); - - memPolCfg.setMaxSize(32 * 1024 * 1024); // we don't need much memory for this test - memCfg.setMemoryPolicies(memPolCfg); - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(dsCfg); if (strLog != null) cfg.setGridLogger(strLog); @@ -665,8 +661,8 @@ public class IgniteUidAsConsistentIdMigrationTest extends GridCommonAbstractTest */ private void assertPdsDirsDefaultExist(String subDirName) throws IgniteCheckedException { assertDirectoryExist("binary_meta", subDirName); - assertDirectoryExist(PersistentStoreConfiguration.DFLT_WAL_STORE_PATH, subDirName); - assertDirectoryExist(PersistentStoreConfiguration.DFLT_WAL_ARCHIVE_PATH, subDirName); + assertDirectoryExist(DataStorageConfiguration.DFLT_WAL_PATH, subDirName); + assertDirectoryExist(DataStorageConfiguration.DFLT_WAL_ARCHIVE_PATH, subDirName); assertDirectoryExist(PdsConsistentIdProcessor.DB_DEFAULT_FOLDER, subDirName); } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgnitePdsWalTlbTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgnitePdsWalTlbTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgnitePdsWalTlbTest.java index a06d587..5700eb3 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgnitePdsWalTlbTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgnitePdsWalTlbTest.java @@ -21,9 +21,9 @@ import javax.cache.CacheException; import org.apache.ignite.IgniteDataStreamer; import org.apache.ignite.configuration.CacheConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi; @@ -52,24 +52,14 @@ public class IgnitePdsWalTlbTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg); - MemoryConfiguration memCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(100 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY) + .setCheckpointPageBufferSize(DFLT_CHECKPOINTING_PAGE_BUFFER_SIZE + 1) + .setWalThreadLocalBufferSize(640000000); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(100 * 1024 * 1024); - memPlcCfg.setMaxSize(100 * 1024 * 1024); - - memCfg.setMemoryPolicies(memPlcCfg); - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(memCfg); - - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setCheckpointingPageBufferSize(DFLT_CHECKPOINTING_PAGE_BUFFER_SIZE + 1) - .setTlbSize(640000000) - ); + cfg.setDataStorageConfiguration(memCfg); TcpDiscoverySpi discoSpi = new TcpDiscoverySpi(); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushFailoverTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushFailoverTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushFailoverTest.java index 12ec6ef..af8f679 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushFailoverTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalFlushFailoverTest.java @@ -24,10 +24,9 @@ import org.apache.ignite.IgniteCache; import org.apache.ignite.IgniteCheckedException; 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; -import org.apache.ignite.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.GridKernalState; import org.apache.ignite.internal.IgniteEx; @@ -83,23 +82,15 @@ public class IgniteWalFlushFailoverTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(cacheCfg); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration() - .setName("dfltMemPlc") - .setInitialSize(2 * 1024L * 1024L * 1024L); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(2048L * 1024 * 1024).setPersistenceEnabled(true)) + .setFileIOFactory(new FailingFileIOFactory()) + .setWalMode(WALMode.BACKGROUND) + // Setting WAL Segment size to high values forces flushing by timeout. + .setWalSegmentSize(flushByTimeout ? 500_000 : 50_000); - MemoryConfiguration memCfg = new MemoryConfiguration() - .setMemoryPolicies(memPlcCfg) - .setDefaultMemoryPolicyName(memPlcCfg.getName()); - - cfg.setMemoryConfiguration(memCfg); - - PersistentStoreConfiguration storeCfg = new PersistentStoreConfiguration() - .setFileIOFactory(new FailingFileIOFactory()) - .setWalMode(WALMode.BACKGROUND) - // Setting WAL Segment size to high values forces flushing by timeout. - .setWalSegmentSize(flushByTimeout ? 500_000 : 50_000); - - cfg.setPersistentStoreConfiguration(storeCfg); + cfg.setDataStorageConfiguration(memCfg); return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/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 5d5458e..35d85d1 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 @@ -27,10 +27,10 @@ import org.apache.ignite.cache.CacheAtomicityMode; import org.apache.ignite.cache.CacheWriteSynchronizationMode; import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.configuration.CacheConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtLocalPartition; import org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager; @@ -57,20 +57,12 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest { cfg.setClientMode(client); - MemoryConfiguration memCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(200 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY); - long memSize = 200L * 1024L * 1024L; - - memCfg.setMemoryPolicies( - new MemoryPolicyConfiguration() - .setInitialSize(memSize) - .setMaxSize(memSize) - .setName("dfltMemPlc") - ); - - memCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(memCfg); + cfg.setDataStorageConfiguration(memCfg); CacheConfiguration ccfg1 = new CacheConfiguration(); @@ -82,8 +74,6 @@ public class IgniteWalHistoryReservationsTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg1); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration()); - return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryPPCTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryPPCTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryPPCTest.java new file mode 100644 index 0000000..f3c2c99 --- /dev/null +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryPPCTest.java @@ -0,0 +1,321 @@ +/* + * 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.db.wal; + +import org.apache.ignite.IgniteCache; +import org.apache.ignite.cache.CacheAtomicityMode; +import org.apache.ignite.cache.CacheRebalanceMode; +import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; +import org.apache.ignite.cache.query.annotations.QuerySqlField; +import org.apache.ignite.configuration.BinaryConfiguration; +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.configuration.WALMode; +import org.apache.ignite.internal.IgniteEx; +import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.internal.util.typedef.internal.U; +import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; + +/** + * + */ +public class IgniteWalRecoveryPPCTest extends GridCommonAbstractTest { + /** */ + private boolean fork; + + /** */ + public static final String CACHE_NAME_1 = "cache_1"; + + /** */ + public static final String CACHE_NAME_2 = "cache_2"; + + /** */ + public static final String MEM_PLC_NO_PDS = "mem_plc_2"; + + /** */ + private int walSegmentSize; + + /** Logger only. */ + private boolean logOnly; + + /** {@inheritDoc} */ + @Override protected boolean isMultiJvm() { + return fork; + } + + /** {@inheritDoc} */ + @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { + IgniteConfiguration cfg = super.getConfiguration(gridName); + + CacheConfiguration<Integer, IndexedObject> ccfg = new CacheConfiguration<>(CACHE_NAME_1); + + ccfg.setAtomicityMode(CacheAtomicityMode.ATOMIC); + ccfg.setRebalanceMode(CacheRebalanceMode.SYNC); + ccfg.setAffinity(new RendezvousAffinityFunction(false, 32)); + + cfg.setCacheConfiguration(ccfg); + + CacheConfiguration<Integer, IndexedObject> ccfg2 = new CacheConfiguration<>(CACHE_NAME_2); + + ccfg2.setAtomicityMode(CacheAtomicityMode.ATOMIC); + ccfg2.setRebalanceMode(CacheRebalanceMode.SYNC); + ccfg2.setAffinity(new RendezvousAffinityFunction(false, 32)); + ccfg2.setDataRegionName(MEM_PLC_NO_PDS); + + cfg.setCacheConfiguration(ccfg, ccfg2); + + DataStorageConfiguration dbCfg = new DataStorageConfiguration(); + dbCfg.setPageSize(4 * 1024); + + DataRegionConfiguration memPlcCfg = new DataRegionConfiguration(); + memPlcCfg.setInitialSize(1024 * 1024 * 1024); + memPlcCfg.setMaxSize(1024 * 1024 * 1024); + memPlcCfg.setPersistenceEnabled(true); + + dbCfg.setDefaultDataRegionConfiguration(memPlcCfg); + + DataRegionConfiguration memPlcCfg2 = new DataRegionConfiguration(); + memPlcCfg2.setName(MEM_PLC_NO_PDS); + memPlcCfg2.setInitialSize(1024 * 1024 * 1024); + memPlcCfg2.setMaxSize(1024 * 1024 * 1024); + memPlcCfg2.setPersistenceEnabled(false); + + dbCfg.setDataRegionConfigurations(memPlcCfg2); + + dbCfg.setWalRecordIteratorBufferSize(1024 * 1024); + + dbCfg.setWalHistorySize(2); + + dbCfg.setWalMode(WALMode.LOG_ONLY); + + if (walSegmentSize != 0) + dbCfg.setWalSegmentSize(walSegmentSize); + + cfg.setDataStorageConfiguration(dbCfg); + + cfg.setMarshaller(null); + + BinaryConfiguration binCfg = new BinaryConfiguration(); + + binCfg.setCompactFooter(false); + + cfg.setBinaryConfiguration(binCfg); + + return cfg; + } + + /** {@inheritDoc} */ + @Override protected void beforeTest() throws Exception { + stopAllGrids(); + + deleteRecursively(U.resolveWorkDirectory(U.defaultWorkDirectory(), "db", false)); + } + + /** {@inheritDoc} */ + @Override protected void afterTest() throws Exception { + stopAllGrids(); + + deleteRecursively(U.resolveWorkDirectory(U.defaultWorkDirectory(), "db", false)); + } + + /** + * @throws Exception if failed. + */ + public void testWalSimple() throws Exception { + try { + IgniteEx ignite = startGrid(1); + + ignite.active(true); + + IgniteCache<Object, Object> cache1 = ignite.cache(CACHE_NAME_1); + IgniteCache<Object, Object> cache2 = ignite.cache(CACHE_NAME_2); + + info(" --> step1"); + + for (int i = 0; i < 10_000; i += 2) { + cache1.put(i, new IndexedObject(i)); + cache2.put(i, new IndexedObject(i + 1)); + } + + info(" --> step2"); + + for (int i = 0; i < 10_000; i += 3) { + cache1.put(i, new IndexedObject(i * 2)); + cache2.put(i, new IndexedObject(i * 2 + 1)); + } + + info(" --> step3"); + + for (int i = 0; i < 10_000; i += 7) { + cache1.put(i, new IndexedObject(i * 3)); + cache2.put(i, new IndexedObject(i * 3 + 1)); + } + + info(" --> check1"); + + // Check. + for (int i = 0; i < 10_000; i++) { + IndexedObject o; + IndexedObject o1; + + if (i % 7 == 0) { + o = new IndexedObject(i * 3); + o1 = new IndexedObject(i * 3 + 1); + } + else if (i % 3 == 0) { + o = new IndexedObject(i * 2); + o1 = new IndexedObject(i * 2 + 1); + } + else if (i % 2 == 0) { + o = new IndexedObject(i); + o1 = new IndexedObject(i + 1); + } + else { + o = null; + o1 = null; + } + + assertEquals(o, cache1.get(i)); + assertEquals(o1, cache2.get(i)); + } + + stopGrid(1); + + ignite = startGrid(1); + + ignite.active(true); + + cache1 = ignite.cache(CACHE_NAME_1); + cache2 = ignite.cache(CACHE_NAME_2); + + info(" --> check2"); + + // Check. + for (int i = 0; i < 10_000; i++) { + IndexedObject o; + + if (i % 7 == 0) + o = new IndexedObject(i * 3); + else if (i % 3 == 0) + o = new IndexedObject(i * 2); + else if (i % 2 == 0) + o = new IndexedObject(i); + else + o = null; + + assertEquals(o, cache1.get(i)); + assertEquals(null, cache2.get(i)); + } + + info(" --> ok"); + } + finally { + stopAllGrids(); + } + } + + /** + * + */ + public void testDynamicallyStartedNonPersistentCache() throws Exception { + try { + IgniteEx ignite = startGrid(1); + + ignite.active(true); + + IgniteCache<Integer, Object> dynamicPersistent = ignite.getOrCreateCache( + new CacheConfiguration<Integer, Object>() + .setAtomicityMode(CacheAtomicityMode.ATOMIC) + .setRebalanceMode(CacheRebalanceMode.SYNC) + .setName("dynamicPersistent") + .setAffinity(new RendezvousAffinityFunction(false, 32))); + + IgniteCache<Integer, Object> dynamicVolatile = ignite.getOrCreateCache( + new CacheConfiguration<Integer, Object>() + .setAtomicityMode(CacheAtomicityMode.ATOMIC) + .setRebalanceMode(CacheRebalanceMode.SYNC) + .setDataRegionName(MEM_PLC_NO_PDS) + .setName("dynamicVolatile") + .setAffinity(new RendezvousAffinityFunction(false, 32))); + + for (int i = 0; i < 10_000; i++) { + dynamicPersistent.put(i, new IndexedObject(i)); + dynamicVolatile.put(i, new IndexedObject(i + 1)); + } + + stopGrid(1); + + ignite = startGrid(1); + + ignite.active(true); + + dynamicPersistent = ignite.cache("dynamicPersistent"); + dynamicVolatile = ignite.cache("dynamicVolatile"); + + for (int i = 0; i < 10_000; i++) + assertEquals(new IndexedObject(i), dynamicPersistent.get(i)); + + assertNull(dynamicVolatile); + + } + finally { + stopAllGrids(); + } + } + + /** + * + */ + private static class IndexedObject { + /** */ + @QuerySqlField(index = true) + private int iVal; + + /** + * @param iVal Integer value. + */ + private IndexedObject(int iVal) { + this.iVal = iVal; + } + + /** {@inheritDoc} */ + @Override public boolean equals(Object o) { + if (this == o) + return true; + + if (!(o instanceof IndexedObject)) + return false; + + IndexedObject that = (IndexedObject)o; + + return iVal == that.iVal; + } + + /** {@inheritDoc} */ + @Override public int hashCode() { + return iVal; + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(IndexedObject.class, this); + } + } +} http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoverySeveralRestartsTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoverySeveralRestartsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoverySeveralRestartsTest.java index 9497dc6..699fe81 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoverySeveralRestartsTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoverySeveralRestartsTest.java @@ -28,10 +28,9 @@ import org.apache.ignite.cache.affinity.rendezvous.RendezvousAffinityFunction; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.util.typedef.internal.S; @@ -80,25 +79,13 @@ public class IgniteWalRecoverySeveralRestartsTest extends GridCommonAbstractTest cfg.setCacheConfiguration(ccfg); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration memCfg = new DataStorageConfiguration() + .setDefaultDataRegionConfiguration( + new DataRegionConfiguration().setMaxSize(500 * 1024 * 1024).setPersistenceEnabled(true)) + .setWalMode(WALMode.LOG_ONLY) + .setPageSize(PAGE_SIZE); - dbCfg.setPageSize(PAGE_SIZE); - - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); - - memPlcCfg.setName("dfltMemPlc"); - memPlcCfg.setInitialSize(500 * 1024 * 1024); - memPlcCfg.setMaxSize(500 * 1024 * 1024); - - dbCfg.setMemoryPolicies(memPlcCfg); - dbCfg.setDefaultMemoryPolicyName("dfltMemPlc"); - - cfg.setMemoryConfiguration(dbCfg); - - cfg.setPersistentStoreConfiguration( - new PersistentStoreConfiguration() - .setWalMode(WALMode.LOG_ONLY) - ); + cfg.setDataStorageConfiguration(memCfg); cfg.setMarshaller(null); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java index bf8cd85..b357877 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalRecoveryTest.java @@ -48,10 +48,9 @@ import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.MemoryPolicyConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.configuration.WALMode; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.IgniteInternalFuture; @@ -136,34 +135,30 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { cfg.setCacheConfiguration(ccfg); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration dbCfg = new DataStorageConfiguration(); dbCfg.setPageSize(4 * 1024); - MemoryPolicyConfiguration memPlcCfg = new MemoryPolicyConfiguration(); + DataRegionConfiguration memPlcCfg = new DataRegionConfiguration(); - memPlcCfg.setName("dfltMemPlc"); + memPlcCfg.setName("dfltDataRegion"); memPlcCfg.setInitialSize(1024 * 1024 * 1024); memPlcCfg.setMaxSize(1024 * 1024 * 1024); + memPlcCfg.setPersistenceEnabled(true); - dbCfg.setMemoryPolicies(memPlcCfg); - dbCfg.setDefaultMemoryPolicyName("dfltMemPlc"); + dbCfg.setDefaultDataRegionConfiguration(memPlcCfg); - cfg.setMemoryConfiguration(dbCfg); + dbCfg.setWalRecordIteratorBufferSize(1024 * 1024); - PersistentStoreConfiguration pCfg = new PersistentStoreConfiguration(); - - pCfg.setWalRecordIteratorBufferSize(1024 * 1024); - - pCfg.setWalHistorySize(2); + dbCfg.setWalHistorySize(2); if (logOnly) - pCfg.setWalMode(WALMode.LOG_ONLY); + dbCfg.setWalMode(WALMode.LOG_ONLY); if (walSegmentSize != 0) - pCfg.setWalSegmentSize(walSegmentSize); + dbCfg.setWalSegmentSize(walSegmentSize); - cfg.setPersistentStoreConfiguration(pCfg); + cfg.setDataStorageConfiguration(dbCfg); cfg.setMarshaller(null); @@ -976,7 +971,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { delta.applyDelta(sharedCtx .database() - .memoryPolicy(null) + .dataRegion(null) .pageMemory(), ((DirectBuffer)buf1).address()); @@ -990,7 +985,7 @@ public class IgniteWalRecoveryTest extends GridCommonAbstractTest { info("Done apply..."); - PageMemoryEx pageMem = (PageMemoryEx)db.memoryPolicy(null).pageMemory(); + PageMemoryEx pageMem = (PageMemoryEx)db.dataRegion(null).pageMemory(); for (Map.Entry<FullPageId, byte[]> entry : rolledPages.entrySet()) { FullPageId fullId = entry.getKey(); http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalSerializerVersionTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalSerializerVersionTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalSerializerVersionTest.java index f31d0f9..dcda829 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalSerializerVersionTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/IgniteWalSerializerVersionTest.java @@ -18,8 +18,9 @@ package org.apache.ignite.internal.processors.cache.persistence.db.wal; import org.apache.ignite.IgniteCheckedException; +import org.apache.ignite.configuration.DataRegionConfiguration; import org.apache.ignite.configuration.IgniteConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.pagemem.wal.IgniteWriteAheadLogManager; import org.apache.ignite.internal.processors.cache.persistence.wal.RecordSerializer; @@ -48,7 +49,10 @@ public class IgniteWalSerializerVersionTest extends GridCommonAbstractTest { ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(IP_FINDER); - cfg.setPersistentStoreConfiguration(new PersistentStoreConfiguration()); + cfg.setDataStorageConfiguration(new DataStorageConfiguration() + .setDefaultDataRegionConfiguration(new DataRegionConfiguration() + .setPersistenceEnabled(true) + .setMaxSize(100 * 1024 * 1024))); return cfg; } http://git-wip-us.apache.org/repos/asf/ignite/blob/74567763/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalRecoveryTxLogicalRecordsTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalRecoveryTxLogicalRecordsTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalRecoveryTxLogicalRecordsTest.java index f5d46e2..10b6110 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalRecoveryTxLogicalRecordsTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/db/wal/WalRecoveryTxLogicalRecordsTest.java @@ -38,9 +38,9 @@ import org.apache.ignite.cache.query.SqlFieldsQuery; import org.apache.ignite.cache.query.annotations.QuerySqlField; import org.apache.ignite.configuration.BinaryConfiguration; 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.configuration.MemoryConfiguration; -import org.apache.ignite.configuration.PersistentStoreConfiguration; import org.apache.ignite.internal.IgniteEx; import org.apache.ignite.internal.pagemem.PageIdAllocator; import org.apache.ignite.internal.pagemem.store.PageStore; @@ -107,20 +107,20 @@ public class WalRecoveryTxLogicalRecordsTest extends GridCommonAbstractTest { else cfg.setCacheConfiguration(ccfg); - MemoryConfiguration dbCfg = new MemoryConfiguration(); + DataStorageConfiguration dbCfg = new DataStorageConfiguration(); dbCfg.setPageSize(pageSize); - cfg.setMemoryConfiguration(dbCfg); + dbCfg.setWalHistorySize(WAL_HIST_SIZE); - PersistentStoreConfiguration pCfg = new PersistentStoreConfiguration(); - - pCfg.setWalHistorySize(WAL_HIST_SIZE); + dbCfg.setDefaultDataRegionConfiguration(new DataRegionConfiguration() + .setMaxSize(100 * 1024 * 1024) + .setPersistenceEnabled(true)); if (checkpointFreq != null) - pCfg.setCheckpointingFrequency(checkpointFreq); + dbCfg.setCheckpointFrequency(checkpointFreq); - cfg.setPersistentStoreConfiguration(pCfg); + cfg.setDataStorageConfiguration(dbCfg); cfg.setMarshaller(null);