Author: mreutegg
Date: Wed Dec 6 08:19:14 2017
New Revision: 1817269
URL: http://svn.apache.org/viewvc?rev=1817269&view=rev
Log:
OAK-7032: Remove usage of DocumentMK
Added:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java
(with props)
Modified:
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/PersistentCacheTest.java
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreHelper.java
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentBuilderCustomizer.java
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureProvider.java
jackrabbit/oak/trunk/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureTest.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/CheckpointsCommand.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/ResetClusterIdCommand.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RevisionsCommand.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommand.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/DocumentStoreIndexerIT.java
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/RevisionsCommandTest.java
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommandTest.java
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/LongNameTest.java
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/SameNodeSiblingsTest.java
Modified:
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/PersistentCacheTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/PersistentCacheTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/PersistentCacheTest.java
(original)
+++
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/PersistentCacheTest.java
Wed Dec 6 08:19:14 2017
@@ -22,9 +22,9 @@ import org.apache.jackrabbit.oak.fixture
import org.apache.jackrabbit.oak.fixture.OakRepositoryFixture;
import org.apache.jackrabbit.oak.fixture.RepositoryFixture;
import org.apache.jackrabbit.oak.jcr.Jcr;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeState;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreHelper;
import org.apache.jackrabbit.oak.plugins.document.PathRev;
import org.apache.jackrabbit.oak.plugins.document.Revision;
@@ -58,13 +58,13 @@ public class PersistentCacheTest extends
OakFixture oakFixture = ((OakRepositoryFixture)
fixture).getOakFixture();
if (oakFixture instanceof OakFixture.MongoFixture) {
OakFixture.MongoFixture mongoFixture =
(OakFixture.MongoFixture) oakFixture;
- DocumentMK.Builder builder = mongoFixture.getBuilder(1);
+ DocumentNodeStoreBuilder builder = mongoFixture.getBuilder(1);
builder.setStatisticsProvider(statsProvider);
builder.setPersistentCache("target/persistentCache,time," +
CACHE_OPTIONS);
- dns = builder.getNodeStore();
+ dns = builder.build();
nodesCache = DocumentNodeStoreHelper.getNodesCache(dns);
- Oak[] cluster = mongoFixture.setUpCluster(new
DocumentMK.Builder[] {builder}, statsProvider);
- return new Repository[] { new
Jcr(cluster[0]).createRepository() };
+ Oak oak = new Oak(dns);
+ return new Repository[] { new Jcr(oak).createRepository() };
}
}
throw new IllegalArgumentException("Fixture " + fixture + " not
supported for this benchmark.");
Modified:
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
(original)
+++
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
Wed Dec 6 08:19:14 2017
@@ -19,7 +19,9 @@ package org.apache.jackrabbit.oak.fixtur
import java.io.File;
import java.lang.management.ManagementFactory;
import java.net.UnknownHostException;
+import java.util.ArrayList;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import java.util.concurrent.TimeUnit;
@@ -30,10 +32,11 @@ import com.google.common.base.Splitter;
import com.google.common.base.Strings;
import org.apache.jackrabbit.oak.Oak;
import
org.apache.jackrabbit.oak.fixture.SegmentTarFixture.SegmentTarFixtureBuilder;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector;
import
org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.VersionGCStats;
+import
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBBlobStore;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentStore;
@@ -48,6 +51,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import static java.util.Collections.emptyList;
+import static
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder.newRDBDocumentNodeStoreBuilder;
public abstract class OakFixture {
@@ -181,7 +185,7 @@ public abstract class OakFixture {
final String tablePrefix, final boolean
dropDBAfterTest, final long cacheSize,
final boolean useDataStore, final File
base, final int dsCacheInMB, final int vgcMaxAge) {
return new OakFixture(name) {
- private DocumentMK[] kernels;
+ private DocumentNodeStore[] nodeStores;
private VersionGarbageCollectionJob versionGarbageCollectionJob =
null;
private BlobStoreFixture blobStoreFixture;
@@ -206,38 +210,37 @@ public abstract class OakFixture {
@Override
public Oak getOak(int clusterId) throws Exception {
DataSource ds = RDBDataSourceFactory.forJdbcUrl(jdbcuri,
jdbcuser, jdbcpasswd);
- DocumentMK.Builder mkBuilder = new DocumentMK.Builder()
+ DocumentNodeStoreBuilder builder =
newRDBDocumentNodeStoreBuilder()
.setRDBConnection(ds, getOptions(dropDBAfterTest,
tablePrefix)).memoryCacheSize(cacheSize)
.setClusterId(clusterId).setLogging(false);
BlobStore blobStore = getBlobStore(StatisticsProvider.NOOP);
if (blobStore != null) {
- mkBuilder.setBlobStore(blobStore);
+ builder.setBlobStore(blobStore);
}
- DocumentMK dmk = mkBuilder.open();
- return newOak(dmk.getNodeStore());
+ return newOak(builder.build());
}
@Override
public Oak[] setUpCluster(int n, StatisticsProvider statsProvider)
throws Exception {
Oak[] cluster = new Oak[n];
- kernels = new DocumentMK[cluster.length];
+ nodeStores = new DocumentNodeStore[cluster.length];
for (int i = 0; i < cluster.length; i++) {
BlobStore blobStore = getBlobStore(statsProvider);
DataSource ds = RDBDataSourceFactory.forJdbcUrl(jdbcuri,
jdbcuser, jdbcpasswd);
- DocumentMK.Builder mkBuilder = new DocumentMK.Builder()
- .setStatisticsProvider(statsProvider)
+ DocumentNodeStoreBuilder builder =
newRDBDocumentNodeStoreBuilder()
.setRDBConnection(ds, getOptions(dropDBAfterTest,
tablePrefix)).memoryCacheSize(cacheSize)
+ .setStatisticsProvider(statsProvider)
// FIXME: OAK-3389
.setLeaseCheck(false)
.setClusterId(i + 1).setLogging(false);
if (blobStore != null) {
- mkBuilder.setBlobStore(blobStore);
+ builder.setBlobStore(blobStore);
}
- kernels[i] = mkBuilder.open();
- cluster[i] = newOak(kernels[i].getNodeStore());
+ nodeStores[i] = builder.build();
+ cluster[i] = newOak(nodeStores[i]);
}
- if (vgcMaxAge > 0 && kernels.length >= 1) {
- versionGarbageCollectionJob = new
VersionGarbageCollectionJob(kernels[0].getNodeStore(), vgcMaxAge);
+ if (vgcMaxAge > 0 && nodeStores.length >= 1) {
+ versionGarbageCollectionJob = new
VersionGarbageCollectionJob(nodeStores[0], vgcMaxAge);
Thread t = new Thread(versionGarbageCollectionJob);
t.setDaemon(true);
t.start();
@@ -251,10 +254,10 @@ public abstract class OakFixture {
if (versionGarbageCollectionJob != null) {
versionGarbageCollectionJob.stop();
}
- for (DocumentMK kernel : kernels) {
- kernel.dispose();
- if (kernel.getDocumentStore() instanceof RDBDocumentStore)
{
- dropped +=
((RDBDocumentStore)kernel.getDocumentStore()).getDroppedTables();
+ for (DocumentNodeStore ns : nodeStores) {
+ ns.dispose();
+ if (ns.getDocumentStore() instanceof RDBDocumentStore) {
+ dropped +=
((RDBDocumentStore)ns.getDocumentStore()).getDroppedTables();
}
}
if (dropDBAfterTest) {
@@ -369,7 +372,7 @@ public abstract class OakFixture {
private final int dsCacheInMB;
- private DocumentMK[] kernels;
+ private List<DocumentNodeStore> nodeStores = new ArrayList<>();
private BlobStoreFixture blobStoreFixture;
public MongoFixture(final String name, final String uri,
@@ -385,38 +388,41 @@ public abstract class OakFixture {
this.dsCacheInMB = dsCacheInMB;
}
- public DocumentMK.Builder getBuilder(int clusterId) throws
UnknownHostException {
+ public DocumentNodeStoreBuilder getBuilder(int clusterId) throws
UnknownHostException {
MongoConnection mongo = new MongoConnection(uri);
- DocumentMK.Builder mkBuilder = new DocumentMK.Builder().
- setMongoDB(mongo.getDB()).
+ DocumentNodeStoreBuilder builder = new
MongoDocumentNodeStoreBuilder() {
+ @Override
+ public DocumentNodeStore build() {
+ DocumentNodeStore ns = super.build();
+ nodeStores.add(ns);
+ return ns;
+ }
+ }.setMongoDB(mongo.getDB()).
memoryCacheSize(cacheSize).
- setClusterId(clusterId).
- setLogging(false);
+ setClusterId(clusterId).
+ setLogging(false);
- configurePersistentCache(mkBuilder);
- setupBlobStore(mkBuilder, StatisticsProvider.NOOP);
- return mkBuilder;
+ configurePersistentCache(builder);
+ setupBlobStore(builder, StatisticsProvider.NOOP);
+ return builder;
}
@Override
public Oak getOak(int clusterId) throws Exception {
- DocumentMK dmk = getBuilder(clusterId).open();
- return newOak(dmk.getNodeStore());
+ return newOak(getBuilder(clusterId).build());
}
- public Oak[] setUpCluster(DocumentMK.Builder[] builders,
StatisticsProvider statsProvider) throws Exception {
+ public Oak[] setUpCluster(DocumentNodeStoreBuilder[] builders,
StatisticsProvider statsProvider) throws Exception {
Oak[] cluster = new Oak[builders.length];
- kernels = new DocumentMK[cluster.length];
for (int i = 0; i < cluster.length; i++) {
- kernels[i] = builders[i].open();
- cluster[i] = newOak(kernels[i].getNodeStore());
+ cluster[i] = newOak(builders[i].build());
}
return cluster;
}
@Override
public Oak[] setUpCluster(int n, StatisticsProvider statsProvider)
throws Exception {
- DocumentMK.Builder[] builders = new DocumentMK.Builder[n];
+ DocumentNodeStoreBuilder[] builders = new
DocumentNodeStoreBuilder[n];
for (int i = 0; i < n; i++) {
builders[i] = getBuilder(i + 1);
}
@@ -425,9 +431,10 @@ public abstract class OakFixture {
@Override
public void tearDownCluster() {
- for (DocumentMK kernel : kernels) {
- kernel.dispose();
+ for (DocumentNodeStore ns : nodeStores) {
+ ns.dispose();
}
+ nodeStores.clear();
if (dropDBAfterTest) {
try {
MongoConnection mongo =
@@ -443,10 +450,10 @@ public abstract class OakFixture {
}
}
- private void setupBlobStore(DocumentMK.Builder mkBuilder,
StatisticsProvider statsProvider) {
+ private void setupBlobStore(DocumentNodeStoreBuilder builder,
StatisticsProvider statsProvider) {
initializeBlobStoreFixture(statsProvider);
if (blobStoreFixture != null) {
- mkBuilder.setBlobStore(blobStoreFixture.setUp());
+ builder.setBlobStore(blobStoreFixture.setUp());
}
}
@@ -461,9 +468,9 @@ public abstract class OakFixture {
}
}
- private void configurePersistentCache(DocumentMK.Builder mkBuilder) {
+ private void configurePersistentCache(DocumentNodeStoreBuilder
builder) {
//TODO Persistent cache should be removed in teardown
- mkBuilder.setPersistentCache("target/persistentCache,time");
+ builder.setPersistentCache("target/persistentCache,time");
String persistentCacheIncludes =
System.getProperty("persistentCacheIncludes");
@@ -479,7 +486,7 @@ public abstract class OakFixture {
PathFilter pf = new PathFilter(paths, emptyList());
System.out.println("Configuring persistent cache to only cache
nodes under paths " + paths);
Predicate<String> cachePredicate = path -> path != null &&
pf.filter(path) == PathFilter.Result.INCLUDE;
- mkBuilder.setNodeCachePredicate(cachePredicate);
+ builder.setNodeCachePredicate(cachePredicate);
}
}
Modified:
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreHelper.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreHelper.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreHelper.java
(original)
+++
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreHelper.java
Wed Dec 6 08:19:14 2017
@@ -68,10 +68,6 @@ public class DocumentNodeStoreHelper {
System.out.println("Collected in " + sw.stop());
}
- public static VersionGCSupport createVersionGCSupport(DocumentMK.Builder
builder) {
- return builder.createVersionGCSupport();
- }
-
public static VersionGarbageCollector createVersionGC(
DocumentNodeStore nodeStore, VersionGCSupport gcSupport) {
return new VersionGarbageCollector(nodeStore, gcSupport);
Modified:
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentBuilderCustomizer.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentBuilderCustomizer.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentBuilderCustomizer.java
(original)
+++
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentBuilderCustomizer.java
Wed Dec 6 08:19:14 2017
@@ -21,7 +21,7 @@ package org.apache.jackrabbit.oak.run.cl
import java.io.IOException;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
/**
* Extension point which needs to be registered with the Whiteboard
@@ -29,5 +29,5 @@ import org.apache.jackrabbit.oak.plugins
*/
public interface DocumentBuilderCustomizer {
- void customize(DocumentMK.Builder builder) throws IOException;
+ void customize(DocumentNodeStoreBuilder builder) throws IOException;
}
Modified:
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureProvider.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureProvider.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureProvider.java
(original)
+++
jackrabbit/oak/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureProvider.java
Wed Dec 6 08:19:14 2017
@@ -26,10 +26,12 @@ import javax.sql.DataSource;
import com.google.common.io.Closer;
import com.mongodb.MongoClientURI;
import org.apache.commons.io.FileUtils;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
+import
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentStore;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory;
+import
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentStore;
import org.apache.jackrabbit.oak.plugins.document.util.MongoConnection;
import org.apache.jackrabbit.oak.spi.blob.BlobStore;
@@ -39,6 +41,8 @@ import org.apache.jackrabbit.oak.stats.S
import static com.google.common.base.Preconditions.checkNotNull;
import static java.util.Collections.emptyMap;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
+import static
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder.newRDBDocumentNodeStoreBuilder;
import static
org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.getService;
class DocumentFixtureProvider {
@@ -47,7 +51,17 @@ class DocumentFixtureProvider {
Whiteboard wb,
Closer closer,
boolean readOnly) throws IOException {
- DocumentMK.Builder builder = new DocumentMK.Builder();
+ CommonOptions commonOpts = options.getOptionBean(CommonOptions.class);
+
+ DocumentNodeStoreBuilder builder;
+ if (commonOpts.isMongo()) {
+ builder = newMongoDocumentNodeStoreBuilder();
+ } else if (commonOpts.isRDB()) {
+ builder = newRDBDocumentNodeStoreBuilder();
+ } else {
+ throw new IllegalStateException("Unknown DocumentStore");
+ }
+
StatisticsProvider statisticsProvider = checkNotNull(getService(wb,
StatisticsProvider.class));
DocumentBuilderCustomizer customizer = getService(wb,
DocumentBuilderCustomizer.class);
@@ -76,8 +90,6 @@ class DocumentFixtureProvider {
builder.disableBranches();
}
- CommonOptions commonOpts = options.getOptionBean(CommonOptions.class);
-
if (docStoreOpts.isCacheDistributionDefined()){
builder.memoryCacheDistribution(
docStoreOpts.getNodeCachePercentage(),
@@ -98,16 +110,16 @@ class DocumentFixtureProvider {
MongoConnection mongo = new MongoConnection(uri.getURI());
wb.register(MongoConnection.class, mongo, emptyMap());
closer.register(mongo::close);
- builder.setMongoDB(mongo.getDB());
- dns = builder.getNodeStore();
+ ((MongoDocumentNodeStoreBuilder)
builder).setMongoDB(mongo.getDB());
+ dns = builder.build();
wb.register(MongoDocumentStore.class, (MongoDocumentStore)
builder.getDocumentStore(), emptyMap());
} else if (commonOpts.isRDB()) {
RDBStoreOptions rdbOpts =
options.getOptionBean(RDBStoreOptions.class);
DataSource ds =
RDBDataSourceFactory.forJdbcUrl(commonOpts.getStoreArg(),
rdbOpts.getUser(), rdbOpts.getPassword());
wb.register(DataSource.class, ds, emptyMap());
- builder.setRDBConnection(ds);
- dns = builder.getNodeStore();
+ ((RDBDocumentNodeStoreBuilder) builder).setRDBConnection(ds);
+ dns = builder.build();
wb.register(RDBDocumentStore.class, (RDBDocumentStore)
builder.getDocumentStore(), emptyMap());
} else {
throw new IllegalStateException("Unknown DocumentStore");
Modified:
jackrabbit/oak/trunk/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureTest.java
(original)
+++
jackrabbit/oak/trunk/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/run/cli/DocumentFixtureTest.java
Wed Dec 6 08:19:14 2017
@@ -22,7 +22,7 @@ package org.apache.jackrabbit.oak.run.cl
import java.io.IOException;
import joptsimple.OptionParser;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.MongoUtils;
import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
@@ -64,7 +64,7 @@ public class DocumentFixtureTest {
}
- verify(customizer, times(1)).customize(any(DocumentMK.Builder.class));
+ verify(customizer,
times(1)).customize(any(DocumentNodeStoreBuilder.class));
}
private Options createMongoOptions() throws IOException {
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexDocumentBuilderCustomizer.java
Wed Dec 6 08:19:14 2017
@@ -23,7 +23,7 @@ import java.io.File;
import java.io.IOException;
import org.apache.jackrabbit.oak.commons.IOUtils;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.run.cli.DocumentBuilderCustomizer;
import org.apache.jackrabbit.oak.run.cli.DocumentNodeStoreOptions;
import org.apache.jackrabbit.oak.run.cli.Options;
@@ -46,7 +46,7 @@ class IndexDocumentBuilderCustomizer imp
}
@Override
- public void customize(DocumentMK.Builder builder) throws IOException {
+ public void customize(DocumentNodeStoreBuilder builder) throws IOException
{
configurePersistentCache(builder);
configureCacheSize(builder);
@@ -55,7 +55,7 @@ class IndexDocumentBuilderCustomizer imp
}
}
- private void configurePersistentCache(DocumentMK.Builder builder) throws
IOException {
+ private void configurePersistentCache(DocumentNodeStoreBuilder builder)
throws IOException {
if (System.getProperty(PERSISTENT_CACHE_PROP) == null) {
File temp = opts.getOptionBean(IndexOptions.class).getWorkDir();
File cache = new File(temp, "cache");
@@ -65,7 +65,7 @@ class IndexDocumentBuilderCustomizer imp
}
}
- private void configureCacheForReadOnlyMode(DocumentMK.Builder builder) {
+ private void configureCacheForReadOnlyMode(DocumentNodeStoreBuilder
builder) {
if (!docStoreOpts.isCacheDistributionDefined()) {
builder.memoryCacheDistribution(
35,
@@ -83,7 +83,7 @@ class IndexDocumentBuilderCustomizer imp
log.info("Configuring cache for single threaded access");
}
- private void configureCacheSize(DocumentMK.Builder builder) {
+ private void configureCacheSize(DocumentNodeStoreBuilder builder) {
//Set cache size to max 4GB or half of min memory
if (docStoreOpts.getCacheSize() == 0) {
long maxMem = Runtime.getRuntime().maxMemory();
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/CheckpointsCommand.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/CheckpointsCommand.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/CheckpointsCommand.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/CheckpointsCommand.java
Wed Dec 6 08:19:14 2017
@@ -24,7 +24,6 @@ import java.util.Map;
import org.apache.jackrabbit.oak.checkpoint.Checkpoints;
import org.apache.jackrabbit.oak.run.commons.Command;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import com.google.common.io.Closer;
@@ -35,6 +34,8 @@ import com.mongodb.MongoURI;
import joptsimple.OptionParser;
import joptsimple.OptionSet;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
+
class CheckpointsCommand implements Command {
@Override
@@ -63,9 +64,9 @@ class CheckpointsCommand implements Comm
if (connection.startsWith(MongoURI.MONGODB_PREFIX)) {
MongoClientURI uri = new MongoClientURI(connection);
MongoClient client = new MongoClient(uri);
- final DocumentNodeStore store = new DocumentMK.Builder()
+ final DocumentNodeStore store =
newMongoDocumentNodeStoreBuilder()
.setMongoDB(client.getDB(uri.getDatabase()))
- .getNodeStore();
+ .build();
closer.register(Utils.asCloseable(store));
cps = Checkpoints.onDocumentMK(store);
} else {
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/DataStoreCheckCommand.java
Wed Dec 6 08:19:14 2017
@@ -61,7 +61,6 @@ import org.apache.jackrabbit.oak.commons
import org.apache.jackrabbit.oak.plugins.blob.BlobReferenceRetriever;
import org.apache.jackrabbit.oak.plugins.blob.ReferenceCollector;
import
org.apache.jackrabbit.oak.plugins.document.DocumentBlobReferenceRetriever;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore;
import org.apache.jackrabbit.oak.run.commons.Command;
@@ -85,6 +84,7 @@ import static org.apache.jackrabbit.oak.
import static org.apache.jackrabbit.oak.commons.FileIOUtils.writeAsLine;
import static org.apache.jackrabbit.oak.commons.FileIOUtils.writeStrings;
import static
org.apache.jackrabbit.oak.commons.sort.EscapeUtils.escapeLineBreak;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
import static
org.apache.jackrabbit.oak.segment.file.FileStoreBuilder.fileStoreBuilder;
/**
@@ -180,7 +180,7 @@ public class DataStoreCheckCommand imple
MongoClientURI uri = new MongoClientURI(source);
MongoClient client = new MongoClient(uri);
DocumentNodeStore docNodeStore =
- new
DocumentMK.Builder().setMongoDB(client.getDB(uri.getDatabase())).getNodeStore();
+
newMongoDocumentNodeStoreBuilder().setMongoDB(client.getDB(uri.getDatabase())).build();
closer.register(Utils.asCloseable(docNodeStore));
blobStore = (GarbageCollectableBlobStore)
docNodeStore.getBlobStore();
marker = new DocumentBlobReferenceRetriever(docNodeStore);
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/ResetClusterIdCommand.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/ResetClusterIdCommand.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/ResetClusterIdCommand.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/ResetClusterIdCommand.java
Wed Dec 6 08:19:14 2017
@@ -19,7 +19,6 @@ package org.apache.jackrabbit.oak.run;
import org.apache.jackrabbit.oak.api.CommitFailedException;
import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.run.commons.Command;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.spi.cluster.ClusterRepositoryInfo;
import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
@@ -35,6 +34,8 @@ import com.mongodb.MongoURI;
import joptsimple.OptionParser;
import joptsimple.OptionSet;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
+
/**
* OFFLINE utility to delete the clusterId stored as hidden
* property as defined by ClusterRepositoryInfo.
@@ -97,9 +98,9 @@ class ResetClusterIdCommand implements C
if (args[0].startsWith(MongoURI.MONGODB_PREFIX)) {
MongoClientURI uri = new MongoClientURI(source);
MongoClient client = new MongoClient(uri);
- final DocumentNodeStore dns = new DocumentMK.Builder()
+ final DocumentNodeStore dns =
newMongoDocumentNodeStoreBuilder()
.setMongoDB(client.getDB(uri.getDatabase()))
- .getNodeStore();
+ .build();
closer.register(Utils.asCloseable(dns));
store = dns;
} else {
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RevisionsCommand.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RevisionsCommand.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RevisionsCommand.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RevisionsCommand.java
Wed Dec 6 08:19:14 2017
@@ -39,8 +39,8 @@ import joptsimple.OptionSpec;
import org.apache.jackrabbit.oak.commons.TimeDurationFormatter;
import org.apache.jackrabbit.oak.plugins.document.ClusterNodeInfoDocument;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
import org.apache.jackrabbit.oak.plugins.document.FormatVersion;
import org.apache.jackrabbit.oak.plugins.document.MissingLastRevSeeker;
@@ -57,7 +57,6 @@ import org.slf4j.LoggerFactory;
import static java.util.concurrent.TimeUnit.SECONDS;
import static
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreHelper.createVersionGC;
-import static
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreHelper.createVersionGCSupport;
import static
org.apache.jackrabbit.oak.plugins.document.FormatVersion.versionOf;
import static
org.apache.jackrabbit.oak.plugins.document.util.Utils.getRootDocument;
import static
org.apache.jackrabbit.oak.plugins.document.util.Utils.timestampToString;
@@ -204,13 +203,13 @@ public class RevisionsCommand implements
private VersionGarbageCollector bootstrapVGC(RevisionsOptions options,
Closer closer)
throws IOException {
- DocumentMK.Builder builder = createDocumentMKBuilder(options, closer);
+ DocumentNodeStoreBuilder builder = createDocumentMKBuilder(options,
closer);
if (builder == null) {
System.err.println("revisions mode only available for
DocumentNodeStore");
System.exit(1);
}
// create a VersionGCSupport while builder is read-write
- VersionGCSupport gcSupport = createVersionGCSupport(builder);
+ VersionGCSupport gcSupport = builder.createVersionGCSupport();
// check for matching format version
FormatVersion version = versionOf(gcSupport.getDocumentStore());
if (!DocumentNodeStore.VERSION.equals(version)) {
@@ -225,7 +224,7 @@ public class RevisionsCommand implements
builder.setReadOnlyMode();
// create a version GC that operates on a read-only DocumentNodeStore
// and a GC support with a writable DocumentStore
- VersionGarbageCollector gc = createVersionGC(builder.getNodeStore(),
gcSupport);
+ VersionGarbageCollector gc = createVersionGC(builder.build(),
gcSupport);
VersionGCOptions gcOptions = gc.getOptions();
gcOptions = gcOptions.withDelayFactor(options.getDelay());
@@ -361,7 +360,7 @@ public class RevisionsCommand implements
RevisionsOptions.CMD_SWEEP + " command");
return;
}
- DocumentMK.Builder builder = createDocumentMKBuilder(options, closer);
+ DocumentNodeStoreBuilder builder = createDocumentMKBuilder(options,
closer);
if (builder == null) {
System.err.println("revisions mode only available for
DocumentNodeStore");
return;
@@ -386,7 +385,7 @@ public class RevisionsCommand implements
return;
}
builder.setReadOnlyMode();
- DocumentNodeStore ns = builder.getNodeStore();
+ DocumentNodeStore ns = builder.build();
closer.register(asCloseable(ns));
MissingLastRevSeeker seeker = builder.createMissingLastRevSeeker();
SweepHelper.sweep(store, new RevisionContextWrapper(ns, clusterId),
seeker);
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommand.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommand.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommand.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommand.java
Wed Dec 6 08:19:14 2017
@@ -24,8 +24,9 @@ import javax.sql.DataSource;
import com.mongodb.MongoClientURI;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
+import
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.run.commons.Command;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
import org.apache.jackrabbit.oak.plugins.document.DocumentStoreException;
import org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentStore;
@@ -79,12 +80,12 @@ class UnlockUpgradeCommand implements Co
System.err.println("Database missing in MongoDB URI: " +
clientURI.getURI());
} else {
MongoConnection mongo = new
MongoConnection(clientURI.getURI());
- store = new MongoDocumentStore(mongo.getDB(), new
DocumentMK.Builder());
+ store = new MongoDocumentStore(mongo.getDB(), new
MongoDocumentNodeStoreBuilder());
}
} else if (uri.startsWith("jdbc")) {
DataSource ds = RDBDataSourceFactory.forJdbcUrl(uri,
rdbjdbcuser.value(options),
rdbjdbcpasswd.value(options));
- store = new RDBDocumentStore(ds, new DocumentMK.Builder());
+ store = new RDBDocumentStore(ds, new
DocumentNodeStoreBuilder());
} else {
System.err.println("Unrecognized URI: " + uri);
}
Modified:
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
Wed Dec 6 08:19:14 2017
@@ -19,6 +19,8 @@ package org.apache.jackrabbit.oak.run;
import static java.util.Arrays.asList;
import static org.apache.jackrabbit.oak.commons.PropertiesUtil.populate;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
+import static
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder.newRDBDocumentNodeStoreBuilder;
import java.io.Closeable;
import java.io.File;
@@ -46,8 +48,8 @@ import org.apache.jackrabbit.oak.blob.cl
import org.apache.jackrabbit.oak.blob.cloud.s3.S3DataStore;
import org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore;
import org.apache.jackrabbit.oak.plugins.blob.datastore.OakFileDataStore;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory;
import org.apache.jackrabbit.oak.plugins.document.util.MongoConnection;
import org.apache.jackrabbit.oak.run.cli.DummyDataStore;
@@ -159,9 +161,9 @@ class Utils {
}
if (src.startsWith(MongoURI.MONGODB_PREFIX) || src.startsWith("jdbc"))
{
- DocumentMK.Builder builder = createDocumentMKBuilder(options,
closer);
+ DocumentNodeStoreBuilder builder =
createDocumentMKBuilder(options, closer);
if (builder != null) {
- DocumentNodeStore store = builder.getNodeStore();
+ DocumentNodeStore store = builder.build();
closer.register(asCloseable(store));
return store;
}
@@ -171,7 +173,7 @@ class Utils {
}
@CheckForNull
- static DocumentMK.Builder createDocumentMKBuilder(NodeStoreOptions options,
+ static DocumentNodeStoreBuilder createDocumentMKBuilder(NodeStoreOptions
options,
Closer closer)
throws IOException {
String src = options.getStoreArg();
@@ -179,7 +181,7 @@ class Utils {
options.printHelpOn(System.err);
System.exit(1);
}
- DocumentMK.Builder builder = new DocumentMK.Builder();
+ DocumentNodeStoreBuilder builder;
if (src.startsWith(MongoURI.MONGODB_PREFIX)) {
MongoClientURI uri = new MongoClientURI(src);
if (uri.getDatabase() == null) {
@@ -189,11 +191,11 @@ class Utils {
}
MongoConnection mongo = new MongoConnection(uri.getURI());
closer.register(asCloseable(mongo));
- builder.setMongoDB(mongo.getDB());
+ builder =
newMongoDocumentNodeStoreBuilder().setMongoDB(mongo.getDB());
} else if (src.startsWith("jdbc")) {
DataSource ds = RDBDataSourceFactory.forJdbcUrl(src,
options.getRDBJDBCUser(), options.getRDBJDBCPassword());
- builder.setRDBConnection(ds);
+ builder = newRDBDocumentNodeStoreBuilder().setRDBConnection(ds);
} else {
return null;
}
Modified:
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/DocumentStoreIndexerIT.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/DocumentStoreIndexerIT.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/DocumentStoreIndexerIT.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/DocumentStoreIndexerIT.java
Wed Dec 6 08:19:14 2017
@@ -33,9 +33,9 @@ import org.apache.jackrabbit.oak.index.i
import org.apache.jackrabbit.oak.index.indexer.document.NodeStateEntry;
import org.apache.jackrabbit.oak.index.indexer.document.NodeStateIndexer;
import org.apache.jackrabbit.oak.plugins.document.Collection;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentMKBuilderProvider;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
import org.apache.jackrabbit.oak.plugins.document.MongoConnectionFactory;
import org.apache.jackrabbit.oak.plugins.document.MongoUtils;
@@ -126,8 +126,8 @@ public class DocumentStoreIndexerIT exte
@Test
public void bundling() throws Exception{
- DocumentMK.Builder docBuilder =
builderProvider.newBuilder().setMongoDB(getConnection().getDB());
- DocumentNodeStore store = docBuilder.getNodeStore();
+ DocumentNodeStoreBuilder docBuilder =
builderProvider.newBuilder().setMongoDB(getConnection().getDB());
+ DocumentNodeStore store = docBuilder.build();
Whiteboard wb = new DefaultWhiteboard();
MongoDocumentStore ds = (MongoDocumentStore)
docBuilder.getDocumentStore();
Modified:
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/RevisionsCommandTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/RevisionsCommandTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/RevisionsCommandTest.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/RevisionsCommandTest.java
Wed Dec 6 08:19:14 2017
@@ -26,9 +26,9 @@ import com.google.common.collect.Immutab
import org.apache.jackrabbit.oak.plugins.document.Collection;
import org.apache.jackrabbit.oak.plugins.document.Document;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentMKBuilderProvider;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
import org.apache.jackrabbit.oak.plugins.document.MongoConnectionFactory;
import org.apache.jackrabbit.oak.plugins.document.MongoUtils;
@@ -121,7 +121,7 @@ public class RevisionsCommandTest {
// remove the sweep revision to force a sweep run
MongoConnection c = connectionFactory.getConnection();
- DocumentMK.Builder builder =
builderProvider.newBuilder().setMongoDB(c.getDB());
+ DocumentNodeStoreBuilder builder =
builderProvider.newBuilder().setMongoDB(c.getDB());
DocumentStore store = builder.getDocumentStore();
UpdateOp op = new UpdateOp(getIdFromPath("/"), false);
op.removeMapEntry("_sweepRev", new Revision(0, 0, clusterId));
Modified:
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommandTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommandTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommandTest.java
(original)
+++
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/UnlockUpgradeCommandTest.java
Wed Dec 6 08:19:14 2017
@@ -19,7 +19,6 @@
package org.apache.jackrabbit.oak.run;
import org.apache.jackrabbit.oak.plugins.document.Collection;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentMKBuilderProvider;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
@@ -34,6 +33,7 @@ import org.junit.Rule;
import org.junit.Test;
import static
org.apache.jackrabbit.oak.plugins.document.FormatVersion.versionOf;
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.junit.Assume.assumeTrue;
@@ -80,7 +80,7 @@ public class UnlockUpgradeCommandTest {
private void resetFormatVersion(FormatVersion v) {
MongoConnection c = connectionFactory.getConnection();
- DocumentStore s = new MongoDocumentStore(c.getDB(), new
DocumentMK.Builder());
+ DocumentStore s = new MongoDocumentStore(c.getDB(),
newMongoDocumentNodeStoreBuilder());
s.remove(Collection.SETTINGS, "version");
assertTrue(v.writeTo(s));
s.dispose();
Added:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java?rev=1817269&view=auto
==============================================================================
---
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java
(added)
+++
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java
Wed Dec 6 08:19:14 2017
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.upgrade.cli.node;
+
+import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder;
+
+abstract class DocumentFactory implements NodeStoreFactory {
+
+ private static final long MB = 1024 * 1024;
+
+ static <T extends DocumentNodeStoreBuilder> T baseConfiguration(T builder,
int cacheSize) {
+ boolean fastMigration =
!Boolean.getBoolean("mongomk.disableFastMigration");
+ builder.memoryCacheSize(cacheSize * MB);
+ if (fastMigration) {
+ builder.disableBranches();
+ }
+ return builder;
+ }
+}
Propchange:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/DocumentFactory.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java
(original)
+++
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/JdbcFactory.java
Wed Dec 6 08:19:14 2017
@@ -16,10 +16,10 @@
*/
package org.apache.jackrabbit.oak.upgrade.cli.node;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBBlobStore;
import org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory;
+import
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.spi.blob.BlobStore;
import org.apache.jackrabbit.oak.spi.state.NodeStore;
import org.slf4j.Logger;
@@ -31,7 +31,9 @@ import javax.sql.DataSource;
import java.io.Closeable;
import java.io.IOException;
-public class JdbcFactory implements NodeStoreFactory {
+import static
org.apache.jackrabbit.oak.plugins.document.rdb.RDBDocumentNodeStoreBuilder.newRDBDocumentNodeStoreBuilder;
+
+public class JdbcFactory extends DocumentFactory {
private static final Logger log =
LoggerFactory.getLogger(JdbcFactory.class);
@@ -59,7 +61,7 @@ public class JdbcFactory implements Node
@Override
public NodeStore create(BlobStore blobStore, Closer closer) throws
IOException {
System.setProperty(DocumentNodeStore.SYS_PROP_DISABLE_JOURNAL, "true");
- DocumentMK.Builder builder = MongoFactory.getBuilder(cacheSize);
+ RDBDocumentNodeStoreBuilder builder =
baseConfiguration(newRDBDocumentNodeStoreBuilder(), cacheSize);
if (blobStore != null) {
builder.setBlobStore(blobStore);
}
@@ -69,12 +71,12 @@ public class JdbcFactory implements Node
}
log.info("Initialized DocumentNodeStore on RDB with Cache size : {}
MB, Fast migration : {}", cacheSize,
builder.isDisableBranches());
- DocumentNodeStore documentNodeStore = builder.getNodeStore();
+ DocumentNodeStore documentNodeStore = builder.build();
// TODO probably we should disable all observers, see OAK-5651
documentNodeStore.getBundlingConfigHandler().unregisterObserver();
- closer.register(MongoFactory.asCloseable(documentNodeStore));
+ closer.register(documentNodeStore::dispose);
return documentNodeStore;
}
Modified:
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java
(original)
+++
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/MongoFactory.java
Wed Dec 6 08:19:14 2017
@@ -17,9 +17,9 @@
package org.apache.jackrabbit.oak.upgrade.cli.node;
import com.mongodb.DB;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.plugins.document.mongo.MongoBlobStore;
+import
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder;
import org.apache.jackrabbit.oak.spi.blob.BlobStore;
import org.apache.jackrabbit.oak.spi.state.NodeStore;
@@ -27,13 +27,12 @@ import com.google.common.io.Closer;
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
-import java.io.Closeable;
import java.io.IOException;
import java.net.UnknownHostException;
-public class MongoFactory implements NodeStoreFactory {
+import static
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
- private static final long MB = 1024 * 1024;
+public class MongoFactory extends DocumentFactory {
private final MongoClientURI uri;
@@ -50,7 +49,7 @@ public class MongoFactory implements Nod
@Override
public NodeStore create(BlobStore blobStore, Closer closer) throws
IOException {
System.setProperty(DocumentNodeStore.SYS_PROP_DISABLE_JOURNAL, "true");
- DocumentMK.Builder builder = getBuilder(cacheSize);
+ MongoDocumentNodeStoreBuilder builder =
baseConfiguration(newMongoDocumentNodeStoreBuilder(), cacheSize);
builder.setMongoDB(getDB(closer));
if (blobStore != null) {
builder.setBlobStore(blobStore);
@@ -58,12 +57,12 @@ public class MongoFactory implements Nod
if (readOnly) {
builder.setReadOnlyMode();
}
- DocumentNodeStore documentNodeStore = builder.getNodeStore();
+ DocumentNodeStore documentNodeStore = builder.build();
// TODO probably we should disable all observers, see OAK-5651
documentNodeStore.getBundlingConfigHandler().unregisterObserver();
- closer.register(asCloseable(documentNodeStore));
+ closer.register(documentNodeStore::dispose);
return documentNodeStore;
}
@@ -75,7 +74,7 @@ public class MongoFactory implements Nod
db = uri.getDatabase();
}
MongoClient client = new MongoClient(uri);
- closer.register(asCloseable(client));
+ closer.register(client::close);
return client.getDB(db);
}
@@ -92,34 +91,6 @@ public class MongoFactory implements Nod
}
}
- static Closeable asCloseable(final DocumentNodeStore documentNodeStore) {
- return new Closeable() {
- @Override
- public void close() throws IOException {
- documentNodeStore.dispose();
- }
- };
- }
-
- private static Closeable asCloseable(final MongoClient client) {
- return new Closeable() {
- @Override
- public void close() throws IOException {
- client.close();
- }
- };
- }
-
- static DocumentMK.Builder getBuilder(int cacheSize) {
- boolean fastMigration =
!Boolean.getBoolean("mongomk.disableFastMigration");
- DocumentMK.Builder builder = new DocumentMK.Builder();
- builder.memoryCacheSize(cacheSize * MB);
- if (fastMigration) {
- builder.disableBranches();
- }
- return builder;
- }
-
@Override
public String toString() {
return String.format("DocumentNodeStore[%s]", uri.toString());
Modified:
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/LongNameTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/LongNameTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/LongNameTest.java
(original)
+++
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/LongNameTest.java
Wed Dec 6 08:19:14 2017
@@ -20,6 +20,7 @@ package org.apache.jackrabbit.oak.upgrad
import static com.google.common.collect.Iterables.cycle;
import static com.google.common.collect.Iterables.limit;
+import static
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder.newDocumentNodeStoreBuilder;
import static org.junit.Assert.fail;
import java.io.File;
@@ -35,7 +36,6 @@ import org.apache.commons.io.FileUtils;
import org.apache.jackrabbit.core.RepositoryContext;
import org.apache.jackrabbit.core.RepositoryImpl;
import org.apache.jackrabbit.core.config.RepositoryConfig;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
import org.apache.jackrabbit.oak.segment.SegmentNodeStore;
@@ -97,7 +97,7 @@ public class LongNameTest {
@Test
public void longNameShouldBeSkipped() throws RepositoryException,
IOException {
- DocumentNodeStore nodeStore = new DocumentMK.Builder().getNodeStore();
+ DocumentNodeStore nodeStore = newDocumentNodeStoreBuilder().build();
try {
upgrade(nodeStore, false, true);
@@ -131,7 +131,7 @@ public class LongNameTest {
@Test(expected = RepositoryException.class)
public void longNameOnDocumentStoreThrowsAnException() throws
RepositoryException, IOException {
- DocumentNodeStore nodeStore = new DocumentMK.Builder().getNodeStore();
+ DocumentNodeStore nodeStore = newDocumentNodeStoreBuilder().build();
try {
upgrade(nodeStore, false, false);
} finally {
Modified:
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/SameNodeSiblingsTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/SameNodeSiblingsTest.java?rev=1817269&r1=1817268&r2=1817269&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/SameNodeSiblingsTest.java
(original)
+++
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/SameNodeSiblingsTest.java
Wed Dec 6 08:19:14 2017
@@ -20,6 +20,7 @@ package org.apache.jackrabbit.oak.upgrad
import static com.google.common.collect.ImmutableSet.of;
import static com.google.common.collect.Sets.newHashSet;
+import static
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBuilder.newDocumentNodeStoreBuilder;
import static org.junit.Assert.assertEquals;
import java.io.File;
@@ -39,7 +40,6 @@ import org.apache.jackrabbit.core.Reposi
import org.apache.jackrabbit.core.RepositoryImpl;
import org.apache.jackrabbit.core.config.RepositoryConfig;
import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
-import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.junit.After;
import org.junit.Before;
@@ -151,7 +151,7 @@ public class SameNodeSiblingsTest {
config = RepositoryConfig.install(crx2RepoDir); // re-create the config
RepositoryContext context = RepositoryContext.create(config);
- DocumentNodeStore target = new DocumentMK.Builder().getNodeStore();
+ DocumentNodeStore target = newDocumentNodeStoreBuilder().build();
try {
RepositoryUpgrade upgrade = new RepositoryUpgrade(context, target);
upgrade.copy(null);