Skip to content

Commit 8fbdc19

Browse files
committed
JAVA-2065: Use same DBPort instance for bulk write requests that use OP_INSERT/UPDATE/DELETE wire protocol messages, whether because the write concern is unacknowledged or because the server version is <= 2.4.
1 parent f1fd375 commit 8fbdc19

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

src/main/com/mongodb/DBCollectionImpl.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -904,8 +904,8 @@ BulkWriteResult executeWriteCommandProtocol() {
904904
@Override
905905
WriteResult executeWriteProtocol(final int i) {
906906
ModifyRequest update = updateRequests.get(i);
907-
WriteResult writeResult = update(update.getQuery(), update.getUpdateDocument(), update.isUpsert(),
908-
update.isMulti(), writeConcern, encoder);
907+
WriteResult writeResult = db.getConnector().say(_db, OutMessage.update(DBCollectionImpl.this, encoder,
908+
update.isUpsert(), update.isMulti(), update.getQuery(), update.getUpdateDocument()), writeConcern, port);
909909
return addMissingUpserted(update, writeResult);
910910
}
911911

@@ -930,8 +930,8 @@ BulkWriteResult executeWriteCommandProtocol() {
930930
@Override
931931
WriteResult executeWriteProtocol(final int i) {
932932
ModifyRequest update = replaceRequests.get(i);
933-
WriteResult writeResult = update(update.getQuery(), update.getUpdateDocument(), update.isUpsert(),
934-
update.isMulti(), writeConcern, encoder);
933+
WriteResult writeResult = db.getConnector().say(_db, OutMessage.update(DBCollectionImpl.this, encoder,
934+
update.isUpsert(), update.isMulti(), update.getQuery(), update.getUpdateDocument()), writeConcern, port);
935935
return addMissingUpserted(update, writeResult);
936936
}
937937

@@ -952,7 +952,8 @@ BulkWriteResult executeWriteCommandProtocol() {
952952
@Override
953953
WriteResult executeWriteProtocol(final int i) {
954954
RemoveRequest removeRequest = removeRequests.get(i);
955-
return remove(removeRequest.getQuery(), removeRequest.isMulti(), writeConcern, encoder);
955+
return db.getConnector().say(_db, OutMessage.remove(DBCollectionImpl.this, encoder, removeRequest.getQuery(),
956+
removeRequest.isMulti()), writeConcern, port);
956957
}
957958

958959
@Override
@@ -975,7 +976,7 @@ BulkWriteResult executeWriteCommandProtocol() {
975976

976977
@Override
977978
WriteResult executeWriteProtocol(final int i) {
978-
return insert(asList(insertRequests.get(i).getDocument()), writeConcern, encoder);
979+
return insertWithWriteProtocol(asList(insertRequests.get(i).getDocument()), writeConcern, encoder, port, true);
979980
}
980981

981982
@Override

0 commit comments

Comments
 (0)