Repository: ignite Updated Branches: refs/heads/ignite-6778 [created] 41ff5ff3c
IGNITE-6778 Fixed persistenceEnabled() method usage Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/41ff5ff3 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/41ff5ff3 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/41ff5ff3 Branch: refs/heads/ignite-6778 Commit: 41ff5ff3c0336acc571551bd7fb840251d87a6db Parents: 031f63c Author: Alexey Goncharuk <[email protected]> Authored: Fri Oct 27 16:34:45 2017 +0300 Committer: Alexey Goncharuk <[email protected]> Committed: Fri Oct 27 16:34:45 2017 +0300 ---------------------------------------------------------------------- .../cache/CacheAffinitySharedManager.java | 3 +- .../processors/cache/CacheGroupContext.java | 2 +- .../processors/cache/GridCacheContext.java | 4 +- .../processors/cache/GridCacheMapEntry.java | 2 +- .../cache/GridCacheSharedContext.java | 2 +- .../distributed/dht/GridDhtLocalPartition.java | 2 +- .../dht/GridDhtPartitionTopologyImpl.java | 2 +- .../dht/preloader/GridDhtPartitionDemander.java | 2 +- .../dht/preloader/GridDhtPartitionSupplier.java | 4 +- .../GridDhtPartitionsExchangeFuture.java | 45 ++++++++++++-------- .../dht/preloader/GridDhtPreloader.java | 6 +-- .../GridCacheDatabaseSharedManager.java | 5 --- .../IgniteCacheDatabaseSharedManager.java | 7 --- .../cluster/GridClusterStateProcessor.java | 2 +- .../processors/query/GridQueryProcessor.java | 2 +- .../processors/query/h2/IgniteH2Indexing.java | 10 ++--- 16 files changed, 47 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java index efcb501..8441a5e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheAffinitySharedManager.java @@ -2594,8 +2594,7 @@ public class CacheAffinitySharedManager<K, V> extends GridCacheSharedManagerAdap * @param sql SQL flag. */ private void saveCacheConfiguration(CacheConfiguration<?, ?> cfg, boolean sql) { - if (cctx.pageStore() != null && cctx.database().persistenceEnabled() && - CU.isPersistentCache(cfg, cctx.gridConfig().getDataStorageConfiguration()) && + if (cctx.pageStore() != null && CU.isPersistentCache(cfg, cctx.gridConfig().getDataStorageConfiguration()) && !cctx.kernalContext().clientNode()) { try { StoredCacheData data = new StoredCacheData(cfg); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheGroupContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheGroupContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheGroupContext.java index 18acacf..19ca9c8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheGroupContext.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheGroupContext.java @@ -484,7 +484,7 @@ public class CacheGroupContext { * @return {@code True} if fast eviction is allowed. */ public boolean allowFastEviction() { - return ctx.database().persistenceEnabled() && !queriesEnabled(); + return persistenceEnabled() && !queriesEnabled(); } /** http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java index 34d3c97..3581f9f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java @@ -2038,9 +2038,9 @@ public class GridCacheContext<K, V> implements Externalizable { boolean result = affinityNode() && rebalanceEnabled() && hasPartition(part, affNodes, topVer); // When persistence is enabled, only reading from partitions with OWNING state is allowed. - assert !result || !ctx.cache().context().database().persistenceEnabled() || + assert !result || !group().persistenceEnabled() || topology().partitionState(localNodeId(), part) == OWNING : - "result = " + result + ", persistenceEnabled = " + ctx.cache().context().database().persistenceEnabled() + + "result = " + result + ", persistenceEnabled = " + group().persistenceEnabled() + ", partitionState = " + topology().partitionState(localNodeId(), part); return result; http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java index e46e4d2..778a46e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java @@ -2545,7 +2545,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme boolean walEnabled = !cctx.isNear() && cctx.group().persistenceEnabled(); - if (cctx.shared().database().persistenceEnabled()) { + if (cctx.group().persistenceEnabled()) { unswap(false); if (!isNew()) { http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java index d8614b5..5bf1343 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheSharedContext.java @@ -206,7 +206,7 @@ public class GridCacheSharedContext<K, V> { locStoreCnt = new AtomicInteger(); - if (dbMgr != null && dbMgr.persistenceEnabled()) + if (dbMgr != null && CU.isPersistenceEnabled(kernalCtx.config())) dhtAtomicUpdCnt = new AtomicIntegerArray(kernalCtx.config().getSystemThreadPoolSize()); msgLog = kernalCtx.log(CU.CACHE_MSG_LOG_CATEGORY); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java index cedd466..c813a57 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtLocalPartition.java @@ -500,7 +500,7 @@ public class GridDhtLocalPartition extends GridCacheConcurrentMapImpl implements * @return {@code true} if cas succeeds. */ private boolean casState(long state, GridDhtPartitionState toState) { - if (ctx.database().persistenceEnabled() && grp.dataRegion().config().isPersistenceEnabled()) { + if (grp.persistenceEnabled()) { synchronized (this) { boolean update = this.state.compareAndSet(state, setPartState(state, toState)); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java index 380066a..7abe09b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java @@ -1355,7 +1355,7 @@ public class GridDhtPartitionTopologyImpl implements GridDhtPartitionTopology { GridDhtPartitionMap nodeMap = partMap.get(ctx.localNodeId()); - if (nodeMap != null && ctx.database().persistenceEnabled() && readyTopVer.initialized()) { + if (nodeMap != null && grp.persistenceEnabled() && readyTopVer.initialized()) { for (Map.Entry<Integer, GridDhtPartitionState> e : nodeMap.entrySet()) { int p = e.getKey(); GridDhtPartitionState state = e.getValue(); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java index b0ac657..ed296cd 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java @@ -517,7 +517,7 @@ public class GridDhtPartitionDemander { for (Integer part : parts) { try { - if (ctx.database().persistenceEnabled()) { + if (grp.persistenceEnabled()) { if (partCntrs == null) partCntrs = new HashMap<>(parts.size(), 1.0f); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplier.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplier.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplier.java index e25ace7..6eb31ed 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplier.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionSupplier.java @@ -304,12 +304,12 @@ class GridDhtPartitionSupplier { d.isHistorical(part) ? d.partitionCounter(part) : null); if (!iter.historical()) { - assert !grp.shared().database().persistenceEnabled() || !d.isHistorical(part); + assert !grp.persistenceEnabled() || !d.isHistorical(part); s.clean(part); } else - assert grp.shared().database().persistenceEnabled() && d.isHistorical(part); + assert grp.persistenceEnabled() && d.isHistorical(part); } else iter = (IgniteRebalanceIterator)sctx.entryIt; http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java index abfefe8..5dd3f0a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java @@ -711,12 +711,16 @@ public class GridDhtPartitionsExchangeFuture extends GridDhtTopologyFutureAdapte List<T2<DynamicCacheDescriptor, NearCacheConfiguration>> caches = cctx.cache().cachesToStartOnLocalJoin(); - if (cctx.database().persistenceEnabled() && !cctx.kernalContext().clientNode()) { + if (!cctx.kernalContext().clientNode()) { List<DynamicCacheDescriptor> startDescs = new ArrayList<>(); if (caches != null) { - for (T2<DynamicCacheDescriptor, NearCacheConfiguration> c : caches) - startDescs.add(c.get1()); + for (T2<DynamicCacheDescriptor, NearCacheConfiguration> c : caches) { + DynamicCacheDescriptor startDesc = c.get1(); + + if (CU.isPersistentCache(startDesc.cacheConfiguration(), cctx.gridConfig().getDataStorageConfiguration())) + startDescs.add(startDesc); + } } cctx.database().readCheckpointAndRestoreMemory(startDescs); @@ -805,11 +809,15 @@ public class GridDhtPartitionsExchangeFuture extends GridDhtTopologyFutureAdapte try { cctx.activate(); - if (cctx.database().persistenceEnabled() && !cctx.kernalContext().clientNode()) { + if (!cctx.kernalContext().clientNode()) { List<DynamicCacheDescriptor> startDescs = new ArrayList<>(); - for (ExchangeActions.CacheActionData startReq : exchActions.cacheStartRequests()) - startDescs.add(startReq.descriptor()); + for (ExchangeActions.CacheActionData startReq : exchActions.cacheStartRequests()) { + DynamicCacheDescriptor desc = startReq.descriptor(); + + if (CU.isPersistentCache(desc.cacheConfiguration(), cctx.gridConfig().getDataStorageConfiguration())) + startDescs.add(desc); + } cctx.database().readCheckpointAndRestoreMemory(startDescs); } @@ -2437,22 +2445,23 @@ public class GridDhtPartitionsExchangeFuture extends GridDhtTopologyFutureAdapte * */ private void assignPartitionsStates() { - if (cctx.database().persistenceEnabled()) { - for (Map.Entry<Integer, CacheGroupDescriptor> e : cctx.affinity().cacheGroups().entrySet()) { - if (e.getValue().config().getCacheMode() == CacheMode.LOCAL) - continue; + for (Map.Entry<Integer, CacheGroupDescriptor> e : cctx.affinity().cacheGroups().entrySet()) { + CacheGroupDescriptor grpDesc = e.getValue(); + if (grpDesc.config().getCacheMode() == CacheMode.LOCAL) + continue; - GridDhtPartitionTopology top; + GridDhtPartitionTopology top; - CacheGroupContext grpCtx = cctx.cache().cacheGroup(e.getKey()); + CacheGroupContext grpCtx = cctx.cache().cacheGroup(e.getKey()); - if (grpCtx != null) - top = grpCtx.topology(); - else - top = cctx.exchange().clientTopology(e.getKey(), events().discoveryCache()); + if (!grpCtx.persistenceEnabled()) + continue; - assignPartitionStates(top); - } + top = grpCtx != null ? + grpCtx.topology() : + cctx.exchange().clientTopology(e.getKey(), events().discoveryCache()); + + assignPartitionStates(top); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java index c8d1041..0b499fb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java @@ -220,7 +220,7 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { ClusterNode histSupplier = null; - if (ctx.database().persistenceEnabled() && exchFut != null) { + if (grp.persistenceEnabled() && exchFut != null) { UUID nodeId = exchFut.partitionHistorySupplier(grp.groupId(), p); if (nodeId != null) @@ -235,7 +235,7 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { continue; // For. } - assert ctx.database().persistenceEnabled(); + assert grp.persistenceEnabled(); assert remoteOwners(p, topVer).contains(histSupplier) : remoteOwners(p, topVer); GridDhtPartitionDemandMessage msg = assigns.get(histSupplier); @@ -250,7 +250,7 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { msg.addPartition(p, true); } else { - if (ctx.database().persistenceEnabled()) { + if (grp.persistenceEnabled()) { if (part.state() == RENTING || part.state() == EVICTED) { IgniteInternalFuture<?> rentFut = part.rent(false); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java index 2dcee89..6914054 100755 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java @@ -893,11 +893,6 @@ public class GridCacheDatabaseSharedManager extends IgniteCacheDatabaseSharedMan } /** {@inheritDoc} */ - @Override public boolean persistenceEnabled() { - return true; - } - - /** {@inheritDoc} */ @Override public void onCacheGroupsStopped( Collection<IgniteBiTuple<CacheGroupContext, Boolean>> stoppedGrps ) { http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java index 933c195..8d2b38c 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/IgniteCacheDatabaseSharedManager.java @@ -661,13 +661,6 @@ public class IgniteCacheDatabaseSharedManager extends GridCacheSharedManagerAdap } } - /** - * - */ - public boolean persistenceEnabled() { - return false; - } - /** {@inheritDoc} */ @Override public boolean checkpointLockIsHeldByThread() { return true; http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java index 3cd0451..927fd90 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java @@ -454,7 +454,7 @@ public class GridClusterStateProcessor extends GridProcessorAdapter { List<StoredCacheData> storedCfgs = null; - if (activate && sharedCtx.database().persistenceEnabled()) { + if (activate && CU.isPersistenceEnabled(ctx.config())) { try { Map<String, StoredCacheData> cfgs = ctx.cache().context().pageStore().readCacheConfigurations(); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java index 4886b1b..9327cfe 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java @@ -2558,7 +2558,7 @@ public class GridQueryProcessor extends GridProcessorAdapter { private void saveCacheConfiguration(DynamicCacheDescriptor desc) { GridCacheSharedContext cctx = ctx.cache().context(); - if (cctx.pageStore() != null && cctx.database().persistenceEnabled() && !cctx.kernalContext().clientNode() && + if (cctx.pageStore() != null && !cctx.kernalContext().clientNode() && CU.isPersistentCache(desc.cacheConfiguration(), cctx.gridConfig().getDataStorageConfiguration())) { CacheConfiguration cfg = desc.cacheConfiguration(); http://git-wip-us.apache.org/repos/asf/ignite/blob/41ff5ff3/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java index a861614..dd7308a 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/IgniteH2Indexing.java @@ -61,6 +61,7 @@ import org.apache.ignite.internal.GridTopic; import org.apache.ignite.internal.IgniteInternalFuture; import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion; import org.apache.ignite.internal.processors.cache.CacheEntryImpl; +import org.apache.ignite.internal.processors.cache.CacheGroupContext; import org.apache.ignite.internal.processors.cache.CacheObjectUtils; import org.apache.ignite.internal.processors.cache.CacheObjectValueContext; import org.apache.ignite.internal.processors.cache.GridCacheContext; @@ -2272,11 +2273,6 @@ public class IgniteH2Indexing implements GridQueryIndexing { mapQryExec.cancelLazyWorkers(); - if (ctx != null && !ctx.cache().context().database().persistenceEnabled()) { - for (H2Schema schema : schemas.values()) - schema.dropAll(); - } - for (Connection c : conns) U.close(c, log); @@ -2349,10 +2345,12 @@ public class IgniteH2Indexing implements GridQueryIndexing { // Drop tables. Collection<H2TableDescriptor> rmvTbls = new HashSet<>(); + CacheGroupContext grpCtx = ctx.cache().cache(cacheName).context().group(); + for (H2TableDescriptor tbl : schema.tables()) { if (F.eq(tbl.cache().name(), cacheName)) { try { - boolean removeIdx = !ctx.cache().context().database().persistenceEnabled() || destroy; + boolean removeIdx = !grpCtx.persistenceEnabled() || destroy; tbl.table().setRemoveIndexOnDestroy(removeIdx);
