GG-13361 Fixing index rebuild

Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/454070eb
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/454070eb
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/454070eb

Branch: refs/heads/ignite-7505
Commit: 454070ebb42b88d0245dd5b0ac622e346b992a8b
Parents: ffc7133
Author: Alexey Goncharuk <[email protected]>
Authored: Tue Jan 23 15:52:31 2018 +0300
Committer: Alexey Goncharuk <[email protected]>
Committed: Tue Jan 23 15:52:31 2018 +0300

----------------------------------------------------------------------
 .../cache/distributed/dht/GridDhtPartitionTopologyImpl.java   | 4 ++--
 .../dht/preloader/GridDhtPartitionsExchangeFuture.java        | 1 +
 .../cache/persistence/GridCacheDatabaseSharedManager.java     | 7 +++++--
 .../cache/persistence/IgniteCacheDatabaseSharedManager.java   | 7 +++++++
 4 files changed, 15 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/454070eb/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 0cfe330..ba49164 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
@@ -429,9 +429,9 @@ public class GridDhtPartitionTopologyImpl implements 
GridDhtPartitionTopology {
         IgnitePageStoreManager storeMgr = ctx.pageStore();
 
         return
-            discoCache.baselineNode(ctx.localNodeId()) &&
-            storeMgr instanceof FilePageStoreManager &&
             grp.persistenceEnabled() &&
+            storeMgr instanceof FilePageStoreManager &&
+            discoCache.baselineNode(ctx.localNodeId()) &&
             
Files.exists(((FilePageStoreManager)storeMgr).getPath(grp.sharedGroup(), 
grp.cacheOrGroupName(), p));
     }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/454070eb/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 cf2c925..a9936d7 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
@@ -1541,6 +1541,7 @@ public class GridDhtPartitionsExchangeFuture extends 
GridDhtTopologyFutureAdapte
         }
 
         cctx.database().releaseHistoryForExchange();
+        cctx.database().rebuildIndexesIfNeeded(this);
 
         if (err == null) {
             for (CacheGroupContext grp : cctx.cache().cacheGroups()) {

http://git-wip-us.apache.org/repos/asf/ignite/blob/454070eb/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 580fb3a..fbc9cac 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
@@ -1111,7 +1111,10 @@ public class GridCacheDatabaseSharedManager extends 
IgniteCacheDatabaseSharedMan
         // Before local node join event.
         if (clusterInTransitionStateToActive || (joinEvt && locNode && 
isSrvNode))
             restoreState();
+    }
 
+    /** {@inheritDoc} */
+    @Override public void 
rebuildIndexesIfNeeded(GridDhtPartitionsExchangeFuture fut) {
         if (cctx.kernalContext().query().moduleEnabled()) {
             for (final GridCacheContext cacheCtx : 
(Collection<GridCacheContext>)cctx.cacheContexts()) {
                 if 
(cacheCtx.startTopologyVersion().equals(fut.initialVersion()) &&
@@ -1130,8 +1133,8 @@ public class GridCacheDatabaseSharedManager extends 
IgniteCacheDatabaseSharedMan
                             CacheConfiguration ccfg = cacheCtx.config();
 
                             if (ccfg != null) {
-                                log().info("Finished indexes rebuilding for 
cache: [name=" + ccfg.getName()
-                                    + ", grpName=" + ccfg.getGroupName());
+                                log().info("Finished indexes rebuilding for 
cache [name=" + ccfg.getName()
+                                    + ", grpName=" + ccfg.getGroupName() + 
']');
                             }
                         }
                     });

http://git-wip-us.apache.org/repos/asf/ignite/blob/454070eb/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 1260147..f3e30c6 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
@@ -744,6 +744,13 @@ public class IgniteCacheDatabaseSharedManager extends 
GridCacheSharedManagerAdap
     }
 
     /**
+     * @param fut Partition exchange future.
+     */
+    public void rebuildIndexesIfNeeded(GridDhtPartitionsExchangeFuture fut) {
+        // No-op.
+    }
+
+    /**
      * Needed action before any cache will stop
      */
     public void prepareCachesStop() {

Reply via email to