You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ad...@apache.org on 2018/10/18 18:31:38 UTC
svn commit: r1844278 - in
/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli:
node/SegmentAzureFactory.java parser/StoreType.java
Author: adulceanu
Date: Thu Oct 18 18:31:37 2018
New Revision: 1844278
URL: http://svn.apache.org/viewvc?rev=1844278&view=rev
Log:
OAK-7843 - oak-upgrade doesn't correctly pass segment cache size to file store
Fixed SEGMENT_AZURE as well
Modified:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentAzureFactory.java
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/parser/StoreType.java
Modified: jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentAzureFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentAzureFactory.java?rev=1844278&r1=1844277&r2=1844278&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentAzureFactory.java (original)
+++ jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentAzureFactory.java Thu Oct 18 18:31:37 2018
@@ -16,6 +16,7 @@
*/
package org.apache.jackrabbit.oak.upgrade.cli.node;
+import static org.apache.jackrabbit.oak.segment.SegmentCache.DEFAULT_SEGMENT_CACHE_MB;
import static org.apache.jackrabbit.oak.upgrade.cli.node.FileStoreUtils.asCloseable;
import java.io.IOException;
@@ -46,10 +47,13 @@ public class SegmentAzureFactory impleme
private final String connectionString;
private final String containerName;
private final String dir;
+
+ private int segmentCacheSize;
private final boolean readOnly;
public static class Builder {
private final String dir;
+ private final int segmentCacheSize;
private final boolean readOnly;
private String accountName;
@@ -57,8 +61,9 @@ public class SegmentAzureFactory impleme
private String connectionString;
private String containerName;
- public Builder(String dir, boolean readOnly) {
+ public Builder(String dir, int segmentCacheSize, boolean readOnly) {
this.dir = dir;
+ this.segmentCacheSize = segmentCacheSize;
this.readOnly = readOnly;
}
@@ -93,6 +98,7 @@ public class SegmentAzureFactory impleme
this.connectionString = builder.connectionString;
this.containerName = builder.containerName;
this.dir = builder.dir;
+ this.segmentCacheSize = builder.segmentCacheSize;
this.readOnly = builder.readOnly;
}
@@ -115,6 +121,7 @@ public class SegmentAzureFactory impleme
try {
if (readOnly) {
final ReadOnlyFileStore fs;
+ builder.withSegmentCacheSize(segmentCacheSize > 0 ? segmentCacheSize : DEFAULT_SEGMENT_CACHE_MB);
fs = builder.buildReadOnly();
closer.register(asCloseable(fs));
return SegmentNodeStoreBuilders.builder(fs).build();
Modified: jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/parser/StoreType.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/parser/StoreType.java?rev=1844278&r1=1844277&r2=1844278&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/parser/StoreType.java (original)
+++ jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/parser/StoreType.java Thu Oct 18 18:31:37 2018
@@ -161,7 +161,9 @@ public enum StoreType {
if (isCustomAzureConnectionString(path)) {
// azure configuration specified through connection string
Map<String, String> config = parseAzureConfigurationFromCustomConnection(path);
- return new StoreFactory(new SegmentAzureFactory.Builder(config.get(KEY_DIR), direction == MigrationDirection.SRC)
+ return new StoreFactory(
+ new SegmentAzureFactory.Builder(config.get(KEY_DIR), migrationOptions.getCacheSizeInMB(),
+ direction == MigrationDirection.SRC)
.connectionString(config.get(KEY_CONNECTION_STRING))
.containerName(config.get(KEY_CONTAINER_NAME))
.build()
@@ -170,7 +172,8 @@ public enum StoreType {
// azure configuration specified through URI
Map<String, String> config = parseAzureConfigurationFromUri(path);
- return new StoreFactory(new SegmentAzureFactory.Builder(config.get(KEY_DIR), direction == MigrationDirection.SRC)
+ return new StoreFactory(new SegmentAzureFactory.Builder(config.get(KEY_DIR),
+ migrationOptions.getCacheSizeInMB(), direction == MigrationDirection.SRC)
.accountName(config.get(KEY_ACCOUNT_NAME))
.uri(config.get(KEY_STORAGE_URI))
.build()