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 2021/02/16 10:48:42 UTC
svn commit: r1886578 - in /jackrabbit/oak/trunk: oak-parent/ oak-run/
oak-store-document/
oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/
oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/
Author: mreutegg
Date: Tue Feb 16 10:48:42 2021
New Revision: 1886578
URL: http://svn.apache.org/viewvc?rev=1886578&view=rev
Log:
OAK-9357: Update to MongoDB Java driver 3.12
Modified:
jackrabbit/oak/trunk/oak-parent/pom.xml
jackrabbit/oak/trunk/oak-run/pom.xml
jackrabbit/oak/trunk/oak-store-document/pom.xml
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java
jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoSessionFactory.java
jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestCollection.java
jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestDatabase.java
Modified: jackrabbit/oak/trunk/oak-parent/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-parent/pom.xml?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-parent/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-parent/pom.xml Tue Feb 16 10:48:42 2021
@@ -54,7 +54,7 @@
<segment.db>SegmentMK</segment.db>
<lucene.version>4.7.1</lucene.version>
<solr.version>8.6.3</solr.version>
- <mongo.driver.version>3.8.2</mongo.driver.version>
+ <mongo.driver.version>3.12.7</mongo.driver.version>
<slf4j.api.version>1.7.30</slf4j.api.version>
<slf4j.version>1.7.30</slf4j.version> <!-- sync with logback version -->
<logback.version>1.2.3</logback.version>
Modified: jackrabbit/oak/trunk/oak-run/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/pom.xml?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-run/pom.xml Tue Feb 16 10:48:42 2021
@@ -35,6 +35,7 @@
<groovy.version>2.4.17</groovy.version>
<!--
Size History:
+ + 56 MB MongoDB Java driver 3.12.7 (OAK-9357)
+ 55 MB Add support for segment persistent cache (OAK-7744)
+ 54 MB AWS support for segment-tar (OAK-8827)
+ 52 MB AWS java sdk update (OAK-8875)
@@ -46,7 +47,7 @@
+ 41 MB build failing on the release profile (OAK-6250)
+ 38 MB. Initial value. Current 35MB plus a 10%
-->
- <max.jar.size>57671680</max.jar.size>
+ <max.jar.size>58720256</max.jar.size>
</properties>
<build>
Modified: jackrabbit/oak/trunk/oak-store-document/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/pom.xml?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-store-document/pom.xml Tue Feb 16 10:48:42 2021
@@ -45,6 +45,7 @@
<Import-Package>
<!-- OAK-7182 -->${guava.osgi.import},
com.mongodb*;version="[3.8, 4)";resolution:=optional,
+ org.bson*;version="[3.8, 4)";resolution:=optional,
*
</Import-Package>
<Export-Package>
Modified: jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoBlobStore.java Tue Feb 16 10:48:42 2021
@@ -67,8 +67,8 @@ public class MongoBlobStore extends Cach
private static final int DUPLICATE_KEY_ERROR_CODE = 11000;
private static final CodecRegistry CODEC_REGISTRY = fromRegistries(
- MongoClient.getDefaultCodecRegistry(),
- fromCodecs(new MongoBlobCodec())
+ fromCodecs(new MongoBlobCodec()),
+ MongoClient.getDefaultCodecRegistry()
);
private final ReadPreference defaultReadPreference;
Modified: jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoSessionFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoSessionFactory.java?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoSessionFactory.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoSessionFactory.java Tue Feb 16 10:48:42 2021
@@ -18,8 +18,10 @@ package org.apache.jackrabbit.oak.plugin
import com.mongodb.ClientSessionOptions;
import com.mongodb.MongoClient;
+import com.mongodb.ServerAddress;
import com.mongodb.TransactionOptions;
import com.mongodb.client.ClientSession;
+import com.mongodb.client.TransactionBody;
import com.mongodb.session.ServerSession;
import org.bson.BsonDocument;
@@ -139,6 +141,39 @@ class MongoSessionFactory {
}
@Override
+ public ServerAddress getPinnedServerAddress() {
+ return session.getPinnedServerAddress();
+ }
+
+ @Override
+ public void setPinnedServerAddress(ServerAddress address) {
+ session.setPinnedServerAddress(address);
+ }
+
+ @NotNull
+ @Override
+ public <T> T withTransaction(@NotNull TransactionBody<T> transactionBody) {
+ return session.withTransaction(transactionBody);
+ }
+
+ @NotNull
+ @Override
+ public <T> T withTransaction(@NotNull TransactionBody<T> transactionBody,
+ @NotNull TransactionOptions options) {
+ return session.withTransaction(transactionBody, options);
+ }
+
+ @Override
+ public BsonDocument getRecoveryToken() {
+ return session.getRecoveryToken();
+ }
+
+ @Override
+ public void setRecoveryToken(BsonDocument recoveryToken) {
+ session.setRecoveryToken(recoveryToken);
+ }
+
+ @Override
public void close() {
synchronized (this) {
session.advanceClusterTime(clusterTime);
Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestCollection.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestCollection.java?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestCollection.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestCollection.java Tue Feb 16 10:48:42 2021
@@ -889,6 +889,134 @@ class MongoTestCollection<TDocument> imp
return doc;
}
+ @NotNull
+ @Override
+ public UpdateResult updateOne(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateOne(filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateOne(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull UpdateOptions updateOptions) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateOne(filter, update, updateOptions);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateOne(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateOne(clientSession, filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateOne(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull UpdateOptions updateOptions) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateOne(clientSession, filter, update, updateOptions);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateMany(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateMany(filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateMany(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull UpdateOptions updateOptions) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateMany(filter, update, updateOptions);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateMany(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateMany(clientSession, filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @NotNull
+ @Override
+ public UpdateResult updateMany(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull UpdateOptions updateOptions) {
+ maybeThrowExceptionBeforeUpdate();
+ UpdateResult result = collection.updateMany(clientSession, filter, update, updateOptions);
+ maybeThrowExceptionAfterUpdate();
+ return result;
+ }
+
+ @Override
+ public TDocument findOneAndUpdate(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ TDocument doc = collection.findOneAndUpdate(filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return doc;
+ }
+
+ @Override
+ public TDocument findOneAndUpdate(@NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull FindOneAndUpdateOptions options) {
+ maybeThrowExceptionBeforeUpdate();
+ TDocument doc = collection.findOneAndUpdate(filter, update, options);
+ maybeThrowExceptionAfterUpdate();
+ return doc;
+ }
+
+ @Override
+ public TDocument findOneAndUpdate(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update) {
+ maybeThrowExceptionBeforeUpdate();
+ TDocument doc = collection.findOneAndUpdate(clientSession, filter, update);
+ maybeThrowExceptionAfterUpdate();
+ return doc;
+ }
+
+ @Override
+ public TDocument findOneAndUpdate(@NotNull ClientSession clientSession,
+ @NotNull Bson filter,
+ @NotNull List<? extends Bson> update,
+ @NotNull FindOneAndUpdateOptions options) {
+ maybeThrowExceptionBeforeUpdate();
+ TDocument doc = collection.findOneAndUpdate(clientSession, filter, update, options);
+ maybeThrowExceptionAfterUpdate();
+ return doc;
+ }
+
@Override
public void drop() {
collection.drop();
Modified: jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestDatabase.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestDatabase.java?rev=1886578&r1=1886577&r2=1886578&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestDatabase.java (original)
+++ jackrabbit/oak/trunk/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoTestDatabase.java Tue Feb 16 10:48:42 2021
@@ -22,6 +22,7 @@ import java.util.concurrent.atomic.Atomi
import com.mongodb.ReadConcern;
import com.mongodb.ReadPreference;
import com.mongodb.WriteConcern;
+import com.mongodb.client.AggregateIterable;
import com.mongodb.client.ChangeStreamIterable;
import com.mongodb.client.ClientSession;
import com.mongodb.client.ListCollectionsIterable;
@@ -337,4 +338,32 @@ class MongoTestDatabase implements Mongo
@NotNull Class<TResult> tResultClass) {
return db.watch(clientSession, pipeline, tResultClass);
}
+
+ @NotNull
+ @Override
+ public AggregateIterable<Document> aggregate(@NotNull List<? extends Bson> pipeline) {
+ return db.aggregate(pipeline);
+ }
+
+ @NotNull
+ @Override
+ public <TResult> AggregateIterable<TResult> aggregate(@NotNull List<? extends Bson> pipeline,
+ @NotNull Class<TResult> tResultClass) {
+ return db.aggregate(pipeline, tResultClass);
+ }
+
+ @NotNull
+ @Override
+ public AggregateIterable<Document> aggregate(@NotNull ClientSession clientSession,
+ @NotNull List<? extends Bson> pipeline) {
+ return db.aggregate(clientSession, pipeline);
+ }
+
+ @NotNull
+ @Override
+ public <TResult> AggregateIterable<TResult> aggregate(@NotNull ClientSession clientSession,
+ @NotNull List<? extends Bson> pipeline,
+ @NotNull Class<TResult> tResultClass) {
+ return db.aggregate(clientSession, pipeline, tResultClass);
+ }
}