Repository: ignite Updated Branches: refs/heads/ignite-1534 0bd222d28 -> b3816961c
ignite-1534 debug Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b3816961 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b3816961 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b3816961 Branch: refs/heads/ignite-1534 Commit: b3816961c297d3326b5f42a4fce97583723ba537 Parents: 0bd222d Author: sboikov <[email protected]> Authored: Thu Oct 1 10:11:51 2015 +0300 Committer: sboikov <[email protected]> Committed: Thu Oct 1 10:11:51 2015 +0300 ---------------------------------------------------------------------- .../processors/cache/DynamicCacheDescriptor.java | 17 +++++++++++++++++ .../processors/cache/GridCacheProcessor.java | 8 ++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/b3816961/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/DynamicCacheDescriptor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/DynamicCacheDescriptor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/DynamicCacheDescriptor.java index 24df7e4..b100a31 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/DynamicCacheDescriptor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/DynamicCacheDescriptor.java @@ -68,6 +68,9 @@ public class DynamicCacheDescriptor { /** */ private AffinityTopologyVersion startTopVer; + /** */ + private boolean rcvdOnDiscovery; + /** * @param ctx Context. * @param cacheCfg Cache configuration. @@ -236,6 +239,20 @@ public class DynamicCacheDescriptor { this.updatesAllowed = updatesAllowed; } + /** + * @return {@code True} if received in discovery data. + */ + public boolean receivedOnDiscovery() { + return rcvdOnDiscovery; + } + + /** + * @param rcvdOnDiscovery {@code True} if received in discovery data. + */ + public void receivedOnDiscovery(boolean rcvdOnDiscovery) { + this.rcvdOnDiscovery = rcvdOnDiscovery; + } + /** {@inheritDoc} */ @Override public String toString() { return S.toString(DynamicCacheDescriptor.class, this, "cacheName", U.maskName(cacheCfg.getName())); http://git-wip-us.apache.org/repos/asf/ignite/blob/b3816961/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java index 48455a3..a5bf639 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java @@ -806,7 +806,7 @@ public class GridCacheProcessor extends GridProcessorAdapter { boolean loc = desc.locallyConfigured(); - if (loc || CU.affinityNode(locNode, filter)) { + if (loc || (desc.receivedOnDiscovery() && CU.affinityNode(locNode, filter))) { CacheObjectContext cacheObjCtx = ctx.cacheObjects().contextForCache(ccfg); CachePluginManager pluginMgr = desc.pluginManager(); @@ -1959,7 +1959,11 @@ public class GridCacheProcessor extends GridProcessorAdapter { if (req.initiatingNodeId() == null) desc.staticallyConfigured(true); - registeredCaches.put(maskNull(req.cacheName()), desc); + DynamicCacheDescriptor old = registeredCaches.put(maskNull(req.cacheName()), desc); + + assert old == null : old; + + desc.receivedOnDiscovery(true); ctx.discovery().setCacheFilter( req.cacheName(),
