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);
 

Reply via email to