You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2017/11/02 08:52:25 UTC
ignite git commit: IGNITE-6778 Fixing sys cache restore logic
Repository: ignite
Updated Branches:
refs/heads/ignite-6778 44d582035 -> 0884500c1
IGNITE-6778 Fixing sys cache restore logic
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0884500c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0884500c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0884500c
Branch: refs/heads/ignite-6778
Commit: 0884500c1261f98f3a8b282eacf4329a272abb62
Parents: 44d5820
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Thu Nov 2 11:52:15 2017 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Thu Nov 2 11:52:15 2017 +0300
----------------------------------------------------------------------
.../affinity/GridAffinityAssignmentCache.java | 16 ++++++++++++++--
.../internal/processors/cache/GridCacheUtils.java | 13 +++++++++++++
.../internal/processors/cache/StoredCacheData.java | 9 +++++++++
3 files changed, 36 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/0884500c/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/GridAffinityAssignmentCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/GridAffinityAssignmentCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/GridAffinityAssignmentCache.java
index cbc4eae..c451b77 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/GridAffinityAssignmentCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/affinity/GridAffinityAssignmentCache.java
@@ -589,8 +589,20 @@ public class GridAffinityAssignmentCache {
IgniteInternalFuture<AffinityTopologyVersion> fut = readyFuture(topVer);
- if (fut != null)
- fut.get();
+ if (fut != null) {
+ Thread curTh = Thread.currentThread();
+
+ String threadName = curTh.getName();
+
+ try {
+ curTh.setName(threadName + " (waiting " + topVer + ")");
+
+ fut.get();
+ }
+ finally {
+ curTh.setName(threadName);
+ }
+ }
}
catch (IgniteCheckedException e) {
throw new IgniteException("Failed to wait for affinity ready future for topology version: " + topVer,
http://git-wip-us.apache.org/repos/asf/ignite/blob/0884500c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
index 1f289d0..eb0d9aa 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java
@@ -1686,6 +1686,19 @@ public class GridCacheUtils {
if (dsCfg == null)
return false;
+ // Special handling for system cache is needed.
+ if (isSystemCache(ccfg.getName())) {
+ if (dsCfg.getDefaultDataRegionConfiguration().isPersistenceEnabled())
+ return true;
+
+ for (DataRegionConfiguration drConf : dsCfg.getDataRegionConfigurations()) {
+ if (drConf.isPersistenceEnabled())
+ return true;
+ }
+
+ return false;
+ }
+
String regName = ccfg.getDataRegionName();
if (regName == null || regName.equals(dsCfg.getDefaultDataRegionConfiguration().getName()))
http://git-wip-us.apache.org/repos/asf/ignite/blob/0884500c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/StoredCacheData.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/StoredCacheData.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/StoredCacheData.java
index 39c3cd1..5a88036 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/StoredCacheData.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/StoredCacheData.java
@@ -22,7 +22,9 @@ import java.util.Collection;
import org.apache.ignite.cache.QueryEntity;
import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.internal.pagemem.store.IgnitePageStoreManager;
+import org.apache.ignite.internal.util.tostring.GridToStringInclude;
import org.apache.ignite.internal.util.typedef.internal.A;
+import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.marshaller.jdk.JdkMarshaller;
/**
@@ -36,9 +38,11 @@ public class StoredCacheData implements Serializable {
private static final long serialVersionUID = 0L;
/** Cache configuration. */
+ @GridToStringInclude
private final CacheConfiguration<?, ?> ccfg;
/** Query entities. */
+ @GridToStringInclude
private Collection<QueryEntity> qryEntities;
/** SQL flag - {@code true} if cache was created with {@code CREATE TABLE}. */
@@ -90,4 +94,9 @@ public class StoredCacheData implements Serializable {
public void sql(boolean sql) {
this.sql = sql;
}
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(StoredCacheData.class, this);
+ }
}