Author: jukka
Date: Tue Nov 26 19:09:08 2013
New Revision: 1545786

URL: http://svn.apache.org/r1545786
Log:
OAK-593: Segment-based MK

Automatically scale file and cache size parameters to MBs.
Use MongoClient instead of the deprecated Mongo class.

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/AbstractStore.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/memory/MemoryStore.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/mongo/MongoStore.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStubBase.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentMKRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark/BenchmarkRunner.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakRepositoryFixture.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Main.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/AbstractStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/AbstractStore.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/AbstractStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/AbstractStore.java
 Tue Nov 26 19:09:08 2013
@@ -28,6 +28,8 @@ import com.google.common.cache.Cache;
 
 public abstract class AbstractStore implements SegmentStore {
 
+    protected static final int MB = 1024 * 1024;
+
     private final Cache<UUID, Segment> segments;
 
     /**
@@ -40,11 +42,15 @@ public abstract class AbstractStore impl
 
     private final SegmentWriter writer = new SegmentWriter(this);
 
-    protected AbstractStore(int cacheSize) {
-        this.segments = CacheLIRS.newBuilder()
-                .weigher(Segment.WEIGHER)
-                .maximumWeight(cacheSize)
-                .build();
+    protected AbstractStore(int cacheSizeMB) {
+        if (cacheSizeMB > 0) {
+            this.segments = CacheLIRS.newBuilder()
+                    .weigher(Segment.WEIGHER)
+                    .maximumWeight(cacheSizeMB * MB)
+                    .build();
+        } else {
+            this.segments = null;
+        }
     }
 
     protected abstract Segment loadSegment(UUID id) throws Exception;
@@ -56,9 +62,12 @@ public abstract class AbstractStore impl
 
     @Override
     public Segment readSegment(UUID id) {
-        Segment segment = segments.getIfPresent(id);
-        if (segment != null) {
-            return segment;
+        Segment segment = null;
+        if (segments != null) {
+            segment = segments.getIfPresent(id);
+            if (segment != null) {
+                return segment;
+            }
         }
 
         segment = getWriter().getCurrentSegment(id);
@@ -66,6 +75,15 @@ public abstract class AbstractStore impl
             return segment;
         }
 
+        if (segments == null) {
+            // no caching, just load the segment directly
+            try {
+                return loadSegment(id);
+            } catch (Exception e) {
+                throw new IllegalStateException("Failed to load segment " + 
id, e);
+            }
+        }
+
         synchronized (this) {
             segment = segments.getIfPresent(id);
             while (segment == null && currentlyLoading.contains(id)) {
@@ -111,7 +129,9 @@ public abstract class AbstractStore impl
                 throw new RuntimeException("Interrupted", e);
             }
         }
-        segments.invalidate(segmentId);
+        if (segments != null) {
+            segments.invalidate(segmentId);
+        }
     }
 
     @Override
@@ -140,7 +160,9 @@ public abstract class AbstractStore impl
             }
         }
         records.invalidateAll();
-        segments.invalidateAll();
+        if (segments != null) {
+            segments.invalidateAll();
+        }
     }
 
 }

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
 Tue Nov 26 19:09:08 2013
@@ -27,7 +27,8 @@ import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import com.google.common.base.Preconditions;
-import com.mongodb.Mongo;
+import com.mongodb.MongoClient;
+
 import org.apache.felix.scr.annotations.Activate;
 import org.apache.felix.scr.annotations.Component;
 import org.apache.felix.scr.annotations.ConfigurationPolicy;
@@ -60,7 +61,7 @@ public class SegmentNodeStoreService imp
     @Property(description="TarMK mode (64 for memory mapping, 32 for normal 
file access)")
     public static final String MODE = "tarmk.mode";
 
-    @Property(description="TarMK maximum file size")
+    @Property(description="TarMK maximum file size (MB)", intValue=256)
     public static final String SIZE = "tarmk.size";
 
     @Property(description="MongoDB host")
@@ -75,11 +76,9 @@ public class SegmentNodeStoreService imp
     @Property(description="Cache size (MB)", intValue=200)
     public static final String CACHE = "cache";
 
-    private static final int MB = 1024 * 1024;
-
     private String name;
 
-    private Mongo mongo;
+    private MongoClient mongo;
 
     private SegmentStore store;
 
@@ -111,7 +110,7 @@ public class SegmentNodeStoreService imp
 
             String size = lookup(context, SIZE);
             if (size == null) {
-                size = System.getProperty(SIZE, "268435456"); // 256MB
+                size = System.getProperty(SIZE, "256");
             }
 
             mongo = null;
@@ -123,8 +122,8 @@ public class SegmentNodeStoreService imp
             String db = String.valueOf(properties.get(DB));
             int cache = 
Integer.parseInt(String.valueOf(properties.get(CACHE)));
 
-            mongo = new Mongo(host, port);
-            store = new MongoStore(mongo.getDB(db), cache * MB);
+            mongo = new MongoClient(host, port);
+            store = new MongoStore(mongo.getDB(db), cache);
         }
 
         delegate = new SegmentNodeStore(store);

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
 Tue Nov 26 19:09:08 2013
@@ -42,7 +42,7 @@ import org.apache.jackrabbit.oak.spi.sta
 
 public class FileStore extends AbstractStore {
 
-    private static final int DEFAULT_MEMORY_CACHE_SIZE = 1 << 28; // 256MB
+    private static final int DEFAULT_MEMORY_CACHE_SIZE = 256;
 
     private static final long JOURNAL_MAGIC = 0xdf36544212c0cb24L;
 
@@ -62,24 +62,24 @@ public class FileStore extends AbstractS
 
     private final Map<String, Journal> journals = newHashMap();
 
-    public FileStore(File directory, int maxFileSize, boolean memoryMapping)
+    public FileStore(File directory, int maxFileSizeMB, boolean memoryMapping)
             throws IOException {
-        this(directory, maxFileSize, DEFAULT_MEMORY_CACHE_SIZE, memoryMapping);
+        this(directory, maxFileSizeMB, DEFAULT_MEMORY_CACHE_SIZE, 
memoryMapping);
     }
 
-    public FileStore(File directory, int maxFileSize, int cacheSize,
+    public FileStore(File directory, int maxFileSizeMB, int cacheSizeMB,
             boolean memoryMapping) throws IOException {
-        super(cacheSize);
+        super(cacheSizeMB);
         checkNotNull(directory).mkdirs();
         this.directory = directory;
-        this.maxFileSize = maxFileSize;
+        this.maxFileSize = maxFileSizeMB * MB;
         this.memoryMapping = memoryMapping;
 
         for (int i = 0; true; i++) {
             String name = String.format(FILE_NAME_FORMAT, "bulk", i);
             File file = new File(directory, name);
             if (file.isFile()) {
-                bulkFiles.add(new TarFile(file, maxFileSize, memoryMapping));
+                bulkFiles.add(new TarFile(file, maxFileSizeMB, memoryMapping));
             } else {
                 break;
             }
@@ -89,7 +89,7 @@ public class FileStore extends AbstractS
             String name = String.format(FILE_NAME_FORMAT, "data", i);
             File file = new File(directory, name);
             if (file.isFile()) {
-                dataFiles.add(new TarFile(file, maxFileSize, memoryMapping));
+                dataFiles.add(new TarFile(file, maxFileSizeMB, memoryMapping));
             } else {
                 break;
             }

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/memory/MemoryStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/memory/MemoryStore.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/memory/MemoryStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/memory/MemoryStore.java
 Tue Nov 26 19:09:08 2013
@@ -39,7 +39,7 @@ public class MemoryStore extends Abstrac
             Maps.newConcurrentMap();
 
     public MemoryStore(NodeState root) {
-        super(1024 * 1024);
+        super(0);
         NodeBuilder builder = EMPTY_NODE.builder();
         builder.setChildNode("root", root);
         journals.put("root", new MemoryJournal(this, builder.getNodeState()));

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/mongo/MongoStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/mongo/MongoStore.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/mongo/MongoStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/mongo/MongoStore.java
 Tue Nov 26 19:09:08 2013
@@ -36,7 +36,6 @@ import com.mongodb.BasicDBObject;
 import com.mongodb.DB;
 import com.mongodb.DBCollection;
 import com.mongodb.DBObject;
-import com.mongodb.Mongo;
 import com.mongodb.WriteConcern;
 
 public class MongoStore extends AbstractStore {
@@ -49,8 +48,8 @@ public class MongoStore extends Abstract
 
     private final Map<String, Journal> journals = Maps.newHashMap();
 
-    public MongoStore(DB db, int cacheSize) {
-        super(cacheSize);
+    public MongoStore(DB db, int cacheSizeMB) {
+        super(cacheSizeMB);
         this.db = checkNotNull(db);
         this.segments = db.getCollection("segments");
         NodeBuilder builder = EMPTY_NODE.builder();
@@ -60,10 +59,6 @@ public class MongoStore extends Abstract
                 concern, builder.getNodeState()));
     }
 
-    public MongoStore(Mongo mongo, int cacheSize) {
-        this(mongo.getDB("Oak"), cacheSize);
-    }
-
     @Override
     public void close() {
     }

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStubBase.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStubBase.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStubBase.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStubBase.java
 Tue Nov 26 19:09:08 2013
@@ -38,8 +38,8 @@ import org.apache.jackrabbit.test.Reposi
 
 public class OakRepositoryStubBase extends RepositoryStub {
 
-    private static final int MAX_FILE_SIZE = 64 * 1024 * 1024;
-    private static final int CACHE_SIZE = 32 * 1024 * 1024;
+    private static final int MAX_FILE_SIZE = 64;
+    private static final int CACHE_SIZE = 32;
     private static final boolean MMAP =
             System.getProperty("sun.arch.data.model", "32").equals("64");
 

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentMKRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentMKRepositoryStub.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentMKRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentMKRepositoryStub.java
 Tue Nov 26 19:09:08 2013
@@ -26,7 +26,8 @@ import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 import javax.jcr.UnsupportedRepositoryOperationException;
 
-import com.mongodb.Mongo;
+import com.mongodb.MongoClient;
+
 import org.apache.jackrabbit.api.JackrabbitSession;
 import org.apache.jackrabbit.api.security.principal.PrincipalIterator;
 import org.apache.jackrabbit.api.security.principal.PrincipalManager;
@@ -50,7 +51,7 @@ public class OakSegmentMKRepositoryStub 
     protected static final String DB =
             System.getProperty("segment.db", "SegmentMK");
 
-    private final Mongo connection;
+    private final MongoClient connection;
 
     private final Repository repository;
 
@@ -65,9 +66,9 @@ public class OakSegmentMKRepositoryStub 
 
         Session session = null;
         try {
-            this.connection = new Mongo(HOST, PORT);
+            this.connection = new MongoClient(HOST, PORT);
             Jcr jcr = new Jcr(new Oak(new SegmentNodeStore(
-                    new MongoStore(connection.getDB(DB), 4 * 1024 * 1024))));
+                    new MongoStore(connection.getDB(DB), 4))));
             this.repository = jcr.createRepository();
 
             session = getRepository().login(superuser);
@@ -90,7 +91,7 @@ public class OakSegmentMKRepositoryStub 
 
     public static boolean isAvailable() {
         try {
-            Mongo mongo = new Mongo(HOST, PORT);
+            MongoClient mongo = new MongoClient(HOST, PORT);
             try {
                 mongo.getDatabaseNames();
                 return true;

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
 Tue Nov 26 19:09:08 2013
@@ -58,7 +58,7 @@ public class OakTarMKRepositoryStub exte
         try {
             File directory =
                     new File("target", "tarmk-" + System.currentTimeMillis());
-            this.store = new FileStore(directory, 1024 * 1024, false);
+            this.store = new FileStore(directory, 1, false);
             Jcr jcr = new Jcr(new Oak(new SegmentNodeStore(store)));
             this.repository = jcr.createRepository();
 

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark/BenchmarkRunner.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark/BenchmarkRunner.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark/BenchmarkRunner.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/benchmark/BenchmarkRunner.java
 Tue Nov 26 19:09:08 2013
@@ -90,9 +90,9 @@ public class BenchmarkRunner {
                         dbName.value(options), dropDBAfterTest.value(options),
                         cacheSize * MB),
                 OakRepositoryFixture.getSegment(
-                        host.value(options), port.value(options), cacheSize * 
MB),
+                        host.value(options), port.value(options), cacheSize),
                 OakRepositoryFixture.getTar(
-                        base.value(options), 256 * MB, cacheSize * MB, 
mmap.value(options))
+                        base.value(options), 256, cacheSize, 
mmap.value(options))
         };
         Benchmark[] allBenchmarks = new Benchmark[] {
             new LoginTest(),

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakRepositoryFixture.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakRepositoryFixture.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakRepositoryFixture.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakRepositoryFixture.java
 Tue Nov 26 19:09:08 2013
@@ -34,7 +34,7 @@ import org.apache.jackrabbit.oak.plugins
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.plugins.segment.mongo.MongoStore;
 
-import com.mongodb.Mongo;
+import com.mongodb.MongoClient;
 
 public abstract class OakRepositoryFixture implements RepositoryFixture {
 
@@ -161,17 +161,17 @@ public abstract class OakRepositoryFixtu
     }
 
     public static RepositoryFixture getSegment(
-            final String host, final int port, final int cacheSize) {
+            final String host, final int port, final int cacheSizeMB) {
         return new OakRepositoryFixture("Oak-Segment") {
             private SegmentStore[] stores;
-            private Mongo mongo;
+            private MongoClient mongo;
             @Override
             public Repository[] setUpCluster(int n) throws Exception {
                 Repository[] cluster = new Repository[n];
                 stores = new SegmentStore[cluster.length];
-                mongo = new Mongo(host, port);
+                mongo = new MongoClient(host, port);
                 for (int i = 0; i < cluster.length; i++) {
-                    stores[i] = new MongoStore(mongo.getDB(unique), cacheSize);
+                    stores[i] = new MongoStore(mongo.getDB(unique), 
cacheSizeMB);
                     Oak oak = new Oak(new SegmentNodeStore(stores[i]));
                     cluster[i] = new Jcr(oak).createRepository();
                 }
@@ -189,8 +189,8 @@ public abstract class OakRepositoryFixtu
     }
 
     public static RepositoryFixture getTar(
-            final File base,
-            final int maxFileSize, final int cacheSize, final boolean 
memoryMapping) {
+            final File base, final int maxFileSizeMB, final int cacheSizeMB,
+            final boolean memoryMapping) {
         return new OakRepositoryFixture("Oak-Tar") {
             private SegmentStore[] stores;
             @Override
@@ -199,7 +199,8 @@ public abstract class OakRepositoryFixtu
                 stores = new FileStore[cluster.length];
                 for (int i = 0; i < cluster.length; i++) {
                     stores[i] = new FileStore(
-                            new File(base, unique), maxFileSize, cacheSize, 
memoryMapping);
+                            new File(base, unique),
+                            maxFileSizeMB, cacheSizeMB, memoryMapping);
                     Oak oak = new Oak(new SegmentNodeStore(stores[i]));
                     cluster[i] = new Jcr(oak).createRepository();
                 }

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Main.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Main.java?rev=1545786&r1=1545785&r2=1545786&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Main.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Main.java
 Tue Nov 26 19:09:08 2013
@@ -55,7 +55,6 @@ import org.eclipse.jetty.servlet.Servlet
 
 import com.google.common.collect.Maps;
 import com.google.common.collect.Queues;
-import com.google.common.collect.Sets;
 
 public class Main {
 
@@ -95,7 +94,7 @@ public class Main {
             } else {
                 System.out.println("TarMK " + args[0]);
                 File file = new File(args[0]);
-                FileStore store = new FileStore(file, 256 * 1024 * 1024, 
false);
+                FileStore store = new FileStore(file, 256, false);
                 try {
                     if (args.length == 1) {
                         Map<UUID, List<UUID>> idmap = Maps.newHashMap();
@@ -173,8 +172,7 @@ public class Main {
         RepositoryContext source = RepositoryContext.create(
                 RepositoryConfig.create(new File(olddir)));
         try {
-            FileStore store = new FileStore(
-                    new File(newdir), 256 * 1024 * 1024, true);
+            FileStore store = new FileStore(new File(newdir), 256, true);
             try {
                 NodeStore target = new SegmentNodeStore(store);
                 new RepositoryUpgrade(source, target).copy();


Reply via email to