Merge branch 'ignite-5267' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-gg-12163
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/PersistentStoreConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/PersistentStoreConfiguration.java
index b2e10f4..94923c8 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/PersistentStoreConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/PersistentStoreConfiguration.java
@@ -71,10 +71,10 @@
/** Number of WAL segments to keep. */
private int walSegmentSize = DFLT_WAL_SEGMENT_SIZE;
- /** Write-ahead log persistence path. */
+ /** WAL persistence path. */
private String walStorePath;
- /** Write-ahead log archive path. */
+ /** WAL archive path. */
private String walArchivePath;
/**
@@ -184,18 +184,18 @@
}
/**
- * Gets the number checkpoints to keep in WAL history.
+ * Gets a total number of checkpoints to keep in the WAL history.
*
- * @return Number of WAL segments to keep after the checkpoint is finished.
+ * @return Number of WAL segments to keep after a checkpoint is finished.
*/
public int getWalHistorySize() {
return walHistSize <= 0 ? DFLT_WAL_HISTORY_SIZE : walHistSize;
}
/**
- * Sets the number of checkpoints to keep in WAL history.
+ * Sets a total number of checkpoints to keep in the WAL history.
*
- * @param walHistSize Number of WAL segments to keep after the checkpoint is finished.
+ * @param walHistSize Number of WAL segments to keep after a checkpoint is finished.
* @return {@code this} for chaining.
*/
public PersistentStoreConfiguration setWalHistorySize(int walHistSize) {
@@ -205,7 +205,7 @@
}
/**
- * Gets a number of Write-Ahead Log segments to work with.
+ * Gets a number of WAL segments to work with.
*
* @return Number of work WAL segments.
*/
@@ -214,10 +214,10 @@
}
/**
- * Sets a number of Write Ahead Log segments to work with. Write-ahead log is written over a fixed number
- * of pre-allocated file segments of fixed size. This parameter sets the number of these segments.
+ * Sets a number of WAL segments to work with. For performance reasons,
+ * the whole WAL is split into files of fixed length called segments.
*
- * @param walSegments Number of work WAL segments.
+ * @param walSegments Number of WAL segments.
* @return {@code this} for chaining.
*/
public PersistentStoreConfiguration setWalSegments(int walSegments) {
@@ -227,7 +227,7 @@
}
/**
- * Gets size of a Write-Ahead Log segment.
+ * Gets size of a WAL segment.
*
* @return WAL segment size.
*/
@@ -236,7 +236,7 @@
}
/**
- * Sets size of a Write-Ahead Log segment.
+ * Sets size of a WAL segment.
*
* @param walSegmentSize WAL segment size. 64 MB is used by default.
* @return {@code this} for chaining.
@@ -248,19 +248,19 @@
}
/**
- * Gets a path to the directory where Write-Ahead log is stored.
+ * Gets a path to the directory where WAL is stored.
*
- * @return Write-ahead log persistence path, absolute or relative to Ignite work directory.
+ * @return WAL persistence path, absolute or relative to Ignite work directory.
*/
public String getWalStorePath() {
return walStorePath;
}
/**
- * Sets a path to the directory where Write-Ahead log is stored . If this path is relative, it will be resolved
- * relative to Ignite work directory.
+ * Sets a path to the directory where WAL is stored . If this path is relative, it will be resolved
+ * relatively to Ignite work directory.
*
- * @param walStorePath Write-ahead log persistence path, absolute or relative to Ignite work directory.
+ * @param walStorePath WAL persistence path, absolute or relative to Ignite work directory.
* @return {@code this} for chaining.
*/
public PersistentStoreConfiguration setWalStorePath(String walStorePath) {
@@ -270,7 +270,7 @@
}
/**
- * Gets a path to Write-Ahead log archive. Full WAL segments will be copied to this directory before reuse.
+ * Gets a path to the WAL archive directory.
*
* @return WAL archive directory.
*/
@@ -279,7 +279,8 @@
}
/**
- * Sets a path to store Write-Ahead log archive. Full WAL segments will be copied to this directory before reuse.
+ * Sets a path for the WAL archive directory. Every WAL segment will be fully copied to this directory before
+ * it can be reused for WAL purposes.
*
* @param walArchivePath WAL archive directory.
* @return {@code this} for chaining.
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 d7c1e3d..bed0601 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
@@ -420,7 +420,7 @@
if (storesLocallyOnClient(c, cc))
throw new IgniteCheckedException("MemoryPolicy for client caches must be explicitly configured " +
- "on client node startup. Use MemoryConfiguration to configure MemoryPolicy.");
+ "on client node startup. Use MemoryConfiguration to configure MemoryPolicy.");
if (cc.getCacheMode() == LOCAL && !cc.getAffinity().getClass().equals(LocalAffinityFunction.class))
U.warn(log, "AffinityFunction configuration parameter will be ignored for local cache [cacheName=" +
@@ -2075,11 +2075,19 @@
IgniteWriteAheadLogManager walMgr = null;
if (ctx.config().isPersistentStoreEnabled()) {
- dbMgr = IgniteComponentType.DATABASE_MANAGER.create(ctx, false);
+ if (ctx.clientNode()) {
+ U.warn(log, "Persistent Store is not supported on client nodes (Persistent Store's" +
+ " configuration will be ignored).");
- pageStoreMgr = IgniteComponentType.PAGE_STORE_MANAGER.create(ctx, false);
+ dbMgr = new IgniteCacheDatabaseSharedManager();
+ }
+ else {
+ dbMgr = IgniteComponentType.DATABASE_MANAGER.create(ctx, false);
- walMgr = IgniteComponentType.WAL_MANAGER.create(ctx, false);
+ pageStoreMgr = IgniteComponentType.PAGE_STORE_MANAGER.create(ctx, false);
+
+ walMgr = IgniteComponentType.WAL_MANAGER.create(ctx, false);
+ }
}
else
dbMgr = new IgniteCacheDatabaseSharedManager();