You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vk...@apache.org on 2015/07/09 05:34:57 UTC
[03/19] incubator-ignite git commit: IGNITE-1026 - Fixing dynamic
cache start methods.
IGNITE-1026 - Fixing dynamic cache start methods.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/bb73b66c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/bb73b66c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/bb73b66c
Branch: refs/heads/master
Commit: bb73b66c6d29de578da3aed2654c2a887c97337c
Parents: eef2b37
Author: Alexey Goncharuk <ag...@gridgain.com>
Authored: Thu Jun 18 15:49:06 2015 -0700
Committer: Alexey Goncharuk <ag...@gridgain.com>
Committed: Thu Jun 18 15:49:06 2015 -0700
----------------------------------------------------------------------
.../apache/ignite/internal/IgniteKernal.java | 16 +++++-----
.../processors/cache/GridCacheProcessor.java | 31 ++++++++++++--------
.../datastructures/DataStructuresProcessor.java | 2 +-
.../cache/IgniteDynamicCacheStartSelfTest.java | 4 +--
4 files changed, 30 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bb73b66c/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index e19d3d3..3ee260d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -2265,7 +2265,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
guard();
try {
- ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), null, true).get();
+ ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), null, true, true).get();
return ctx.cache().publicJCache(cacheCfg.getName());
}
@@ -2302,7 +2302,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
try {
if (ctx.cache().cache(cacheCfg.getName()) == null)
- ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), null, false).get();
+ ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), null, false, true).get();
return ctx.cache().publicJCache(cacheCfg.getName());
}
@@ -2325,7 +2325,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
guard();
try {
- ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, true).get();
+ ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, true, true).get();
return ctx.cache().publicJCache(cacheCfg.getName());
}
@@ -2349,10 +2349,10 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
IgniteInternalCache<Object, Object> cache = ctx.cache().cache(cacheCfg.getName());
if (cache == null)
- ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, false).get();
+ ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, false, true).get();
else {
if (cache.configuration().getNearConfiguration() == null)
- ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, false).get();
+ ctx.cache().dynamicStartCache(cacheCfg, cacheCfg.getName(), nearCfg, false, true).get();
}
return ctx.cache().publicJCache(cacheCfg.getName());
@@ -2372,7 +2372,7 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
guard();
try {
- ctx.cache().dynamicStartCache(null, cacheName, nearCfg, true).get();
+ ctx.cache().dynamicStartCache(null, cacheName, nearCfg, true, true).get();
IgniteCacheProxy<K, V> cache = ctx.cache().publicJCache(cacheName);
@@ -2399,10 +2399,10 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
IgniteInternalCache<Object, Object> internalCache = ctx.cache().cache(cacheName);
if (internalCache == null)
- ctx.cache().dynamicStartCache(null, cacheName, nearCfg, false).get();
+ ctx.cache().dynamicStartCache(null, cacheName, nearCfg, false, true).get();
else {
if (internalCache.configuration().getNearConfiguration() == null)
- ctx.cache().dynamicStartCache(null, cacheName, nearCfg, false).get();
+ ctx.cache().dynamicStartCache(null, cacheName, nearCfg, false, true).get();
}
IgniteCacheProxy<K, V> cache = ctx.cache().publicJCache(cacheName);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bb73b66c/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 e6a0994..ac2d7b1 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
@@ -1458,6 +1458,8 @@ public class GridCacheProcessor extends GridProcessorAdapter {
if (clientNodeStart && !affNodeStart) {
if (nearCfg != null)
ccfg.setNearConfiguration(nearCfg);
+ else
+ ccfg.setNearConfiguration(null);
}
CacheObjectContext cacheObjCtx = ctx.cacheObjects().contextForCache(ccfg);
@@ -1746,7 +1748,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
public IgniteInternalFuture<?> createFromTemplate(String cacheName) {
CacheConfiguration cfg = createConfigFromTemplate(cacheName);
- return dynamicStartCache(cfg, cacheName, null, true);
+ return dynamicStartCache(cfg, cacheName, null, true, true);
}
/**
@@ -1762,7 +1764,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
CacheConfiguration cfg = createConfigFromTemplate(cacheName);
- return dynamicStartCache(cfg, cacheName, null, false);
+ return dynamicStartCache(cfg, cacheName, null, false, true);
}
catch (IgniteCheckedException e) {
return new GridFinishedFuture<>(e);
@@ -1855,9 +1857,10 @@ public class GridCacheProcessor extends GridProcessorAdapter {
@Nullable CacheConfiguration ccfg,
String cacheName,
@Nullable NearCacheConfiguration nearCfg,
- boolean failIfExists
+ boolean failIfExists,
+ boolean failIfNotStarted
) {
- return dynamicStartCache(ccfg, cacheName, nearCfg, CacheType.USER, failIfExists);
+ return dynamicStartCache(ccfg, cacheName, nearCfg, CacheType.USER, failIfExists, failIfNotStarted);
}
/**
@@ -1875,12 +1878,11 @@ public class GridCacheProcessor extends GridProcessorAdapter {
String cacheName,
@Nullable NearCacheConfiguration nearCfg,
CacheType cacheType,
- boolean failIfExists
+ boolean failIfExists,
+ boolean failIfNotStarted
) {
checkEmptyTransactions();
- assert ccfg != null || nearCfg != null;
-
DynamicCacheDescriptor desc = registeredCaches.get(maskNull(cacheName));
DynamicCacheChangeRequest req = new DynamicCacheChangeRequest(cacheName, ctx.localNodeId());
@@ -1947,9 +1949,13 @@ public class GridCacheProcessor extends GridProcessorAdapter {
if (desc != null && !desc.cancelled())
ccfg = desc.cacheConfiguration();
- if (ccfg == null)
- return new GridFinishedFuture<>(new CacheExistsException("Failed to start client cache " +
- "(a cache with the given name is not started): " + cacheName));
+ if (ccfg == null) {
+ if (failIfNotStarted)
+ return new GridFinishedFuture<>(new CacheExistsException("Failed to start client cache " +
+ "(a cache with the given name is not started): " + cacheName));
+ else
+ return new GridFinishedFuture<>();
+ }
if (CU.affinityNode(ctx.discovery().localNode(), ccfg.getNodeFilter())) {
if (ccfg.getNearConfiguration() != null)
@@ -1961,6 +1967,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
req.deploymentId(desc.deploymentId());
req.startCacheConfiguration(ccfg);
+
}
if (nearCfg != null)
@@ -2528,7 +2535,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
IgniteCacheProxy<?, ?> cache = jCacheProxies.get(masked);
if (cache == null) {
- dynamicStartCache(null, name, null, false);
+ dynamicStartCache(null, name, null, false, false);
cache = jCacheProxies.get(masked);
}
@@ -2644,7 +2651,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
throw new IllegalStateException("Failed to get cache because it is a system cache: " + cacheName);
if (cache == null) {
- dynamicStartCache(null, cacheName, null, false).get();
+ dynamicStartCache(null, cacheName, null, false, failIfNotStarted).get();
cache = jCacheProxies.get(masked);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bb73b66c/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
index 473a2ac..dcd22cd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java
@@ -819,7 +819,7 @@ public final class DataStructuresProcessor extends GridProcessorAdapter {
CacheConfiguration newCfg = cacheConfiguration(cfg, cacheName);
- ctx.cache().dynamicStartCache(newCfg, cacheName, null, CacheType.INTERNAL, false).get();
+ ctx.cache().dynamicStartCache(newCfg, cacheName, null, CacheType.INTERNAL, false, true).get();
return cacheName;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/bb73b66c/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
index 7905565..7d00417 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteDynamicCacheStartSelfTest.java
@@ -143,7 +143,7 @@ public class IgniteDynamicCacheStartSelfTest extends GridCommonAbstractTest {
ccfg.setName(DYNAMIC_CACHE_NAME);
- futs.add(kernal.context().cache().dynamicStartCache(ccfg, ccfg.getName(), null, true));
+ futs.add(kernal.context().cache().dynamicStartCache(ccfg, ccfg.getName(), null, true, true));
return null;
}
@@ -203,7 +203,7 @@ public class IgniteDynamicCacheStartSelfTest extends GridCommonAbstractTest {
IgniteEx kernal = grid(ThreadLocalRandom.current().nextInt(nodeCount()));
- futs.add(kernal.context().cache().dynamicStartCache(ccfg, ccfg.getName(), null, true));
+ futs.add(kernal.context().cache().dynamicStartCache(ccfg, ccfg.getName(), null, true, true));
return null;
}