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 mr...@apache.org on 2018/03/29 13:06:11 UTC
svn commit: r1827987 [4/4] - in /jackrabbit/oak/trunk:
oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/blob/migration/
oak-it/src/test/java/org/apache/jackrabbit/oak/plugins/document/
oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ oak-jcr/...
Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/ReadPreferenceIT.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/ReadPreferenceIT.java?rev=1827987&r1=1827986&r2=1827987&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/ReadPreferenceIT.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/ReadPreferenceIT.java Thu Mar 29 13:06:10 2018
@@ -65,12 +65,12 @@ public class ReadPreferenceIT extends Ab
setRevisionClock(clock);
setClusterNodeInfoClock(clock);
mongoConnection = connectionFactory.getConnection();
- MongoUtils.dropCollections(mongoConnection.getDB());
+ MongoUtils.dropCollections(mongoConnection.getDBName());
replica = ReplicaSetInfoMock.create(clock);
mk = new DocumentMK.Builder()
.clock(clock)
.setClusterId(1)
- .setMongoDB(mongoConnection.getDB())
+ .setMongoDB(mongoConnection.getMongoClient(), mongoConnection.getDBName())
.setLeaseCheck(false)
.open();
mongoDS = (MongoDocumentStore) mk.getDocumentStore();
@@ -80,7 +80,7 @@ public class ReadPreferenceIT extends Ab
mk2 = new DocumentMK.Builder()
.clock(clock)
.setClusterId(2)
- .setMongoDB(mongoConnection2.getDB())
+ .setMongoDB(mongoConnection2.getMongoClient(), mongoConnection2.getDBName())
.setLeaseCheck(false)
.open();
}
@@ -138,7 +138,7 @@ public class ReadPreferenceIT extends Ab
mongoDS.getMongoReadPreference(NODES,"foo", null, DocumentReadPreference.PREFER_SECONDARY));
//Change the default and assert again
- mongoDS.getDBCollection(NODES).getDB().setReadPreference(ReadPreference.secondary());
+ mongoDS.setReadWriteMode(rwMode(ReadPreference.secondary()));
assertEquals(ReadPreference.secondary(),
mongoDS.getMongoReadPreference(NODES,"foo", null, DocumentReadPreference.PREFER_SECONDARY));
@@ -155,7 +155,7 @@ public class ReadPreferenceIT extends Ab
@Test
public void testMongoReadPreferences() throws Exception {
ReadPreference testPref = ReadPreference.secondary();
- mongoDS.getDBCollection(NODES).getDB().setReadPreference(testPref);
+ mongoDS.setReadWriteMode(rwMode(testPref));
NodeStore extNodeStore = mk2.getNodeStore();
NodeBuilder b1 = extNodeStore.getRoot().builder();
@@ -193,7 +193,7 @@ public class ReadPreferenceIT extends Ab
public void testMongoReadPreferencesForLocalChanges() throws Exception {
//Change the default
ReadPreference testPref = ReadPreference.secondary();
- mongoDS.getDBCollection(NODES).getDB().setReadPreference(testPref);
+ mongoDS.setReadWriteMode(rwMode(testPref));
NodeStore nodeStore = mk.getNodeStore();
NodeBuilder b1 = nodeStore.getRoot().builder();
@@ -234,4 +234,8 @@ public class ReadPreferenceIT extends Ab
assertEquals(ReadPreference.secondary(), mongoDS.getConfiguredReadPreference(NODES));
}
+
+ private static String rwMode(ReadPreference preference) {
+ return "readpreference=" + preference.getName();
+ }
}
Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/RetryReadIT.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/RetryReadIT.java?rev=1827987&r1=1827986&r2=1827987&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/RetryReadIT.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/RetryReadIT.java Thu Mar 29 13:06:10 2018
@@ -30,7 +30,7 @@ import org.apache.jackrabbit.oak.plugins
import org.apache.jackrabbit.oak.plugins.document.util.Utils;
import org.junit.Test;
-import com.mongodb.DB;
+import com.mongodb.MongoClient;
import com.mongodb.MongoException;
import static org.apache.jackrabbit.oak.plugins.document.Collection.NODES;
@@ -50,10 +50,10 @@ public class RetryReadIT extends Abstrac
@Override
public void setUpConnection() throws Exception {
mongoConnection = connectionFactory.getConnection();
- MongoUtils.dropCollections(mongoConnection.getDB());
+ MongoUtils.dropCollections(mongoConnection.getDatabase());
DocumentMK.Builder builder = new DocumentMK.Builder();
builder.clock(getTestClock());
- store = new TestStore(mongoConnection.getDB(), builder);
+ store = new TestStore(mongoConnection.getMongoClient(), mongoConnection.getDBName(), builder);
mk = builder.setDocumentStore(store).open();
}
@@ -103,8 +103,8 @@ public class RetryReadIT extends Abstrac
private int failRead = 0;
- public TestStore(DB db, DocumentMK.Builder builder) {
- super(db, builder);
+ public TestStore(MongoClient client, String dbName, DocumentMK.Builder builder) {
+ super(client, dbName, builder);
}
@Override
Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/replica/ReplicaSetInfoMock.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/replica/ReplicaSetInfoMock.java?rev=1827987&r1=1827986&r2=1827987&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/replica/ReplicaSetInfoMock.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/replica/ReplicaSetInfoMock.java Thu Mar 29 13:06:10 2018
@@ -20,7 +20,9 @@ package org.apache.jackrabbit.oak.plugin
import com.google.common.base.Function;
import com.mongodb.BasicDBObject;
-import com.mongodb.DB;
+import com.mongodb.MongoClient;
+import com.mongodb.client.MongoDatabase;
+
import org.apache.jackrabbit.oak.plugins.document.Revision;
import org.apache.jackrabbit.oak.plugins.document.RevisionVector;
import org.apache.jackrabbit.oak.stats.Clock;
@@ -46,14 +48,17 @@ public class ReplicaSetInfoMock extends
private ReplicaSetMock replicationSet;
public static ReplicaSetInfoMock create(Clock clock) {
- DB db = mock(DB.class);
+ MongoDatabase db = mock(MongoDatabase.class);
when(db.getName()).thenReturn("oak-db");
- when(db.getSisterDB(Mockito.anyString())).thenReturn(db);
- return new ReplicaSetInfoMock(clock, db);
+
+ MongoClient client = mock(MongoClient.class);
+ when(client.getDatabase(Mockito.anyString())).thenReturn(db);
+
+ return new ReplicaSetInfoMock(clock, client, db.getName());
}
- private ReplicaSetInfoMock(Clock clock, DB db) {
- super(clock, db, null, 0, Long.MAX_VALUE, null);
+ private ReplicaSetInfoMock(Clock clock, MongoClient client, String dbName) {
+ super(clock, client, dbName, null, 0, Long.MAX_VALUE, null);
this.clock = clock;
this.mongoClock = clock;
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=1827987&r1=1827986&r2=1827987&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 Thu Mar 29 13:06:10 2018
@@ -16,7 +16,6 @@
*/
package org.apache.jackrabbit.oak.upgrade.cli.node;
-import com.mongodb.DB;
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;
@@ -28,7 +27,6 @@ import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import java.io.IOException;
-import java.net.UnknownHostException;
import static org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentNodeStoreBuilder.newMongoDocumentNodeStoreBuilder;
@@ -50,7 +48,7 @@ public class MongoFactory extends Docume
public NodeStore create(BlobStore blobStore, Closer closer) throws IOException {
System.setProperty(DocumentNodeStore.SYS_PROP_DISABLE_JOURNAL, "true");
MongoDocumentNodeStoreBuilder builder = baseConfiguration(newMongoDocumentNodeStoreBuilder(), cacheSize);
- builder.setMongoDB(getDB(closer));
+ builder.setMongoDB(createClient(closer), getDBName());
if (blobStore != null) {
builder.setBlobStore(blobStore);
}
@@ -66,23 +64,27 @@ public class MongoFactory extends Docume
return documentNodeStore;
}
- private DB getDB(Closer closer) throws UnknownHostException {
+ private MongoClient createClient(Closer closer) {
+ MongoClient client = new MongoClient(uri);
+ closer.register(client::close);
+ return client;
+ }
+
+ private String getDBName() {
String db;
if (uri.getDatabase() == null) {
db = "aem-author"; // assume an author instance
} else {
db = uri.getDatabase();
}
- MongoClient client = new MongoClient(uri);
- closer.register(client::close);
- return client.getDB(db);
+ return db;
}
@Override
public boolean hasExternalBlobReferences() throws IOException {
Closer closer = Closer.create();
try {
- MongoBlobStore mongoBlobStore = new MongoBlobStore(getDB(closer));
+ MongoBlobStore mongoBlobStore = new MongoBlobStore(createClient(closer).getDatabase(getDBName()));
return !mongoBlobStore.getAllChunkIds(0).hasNext();
} catch(Throwable e) {
throw closer.rethrow(e);