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() {
