diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java index e847d9a52..6d3461fbb 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java @@ -388,7 +388,7 @@ public abstract class AbstractMongoQuery implements RepositoryQuery { private Object deleteAndConvertResult(Query query, MongoEntityMetadata metadata) { if (method.isCollectionQuery()) { - return operations.findAllAndRemove(query, metadata.getJavaType()); + return operations.findAllAndRemove(query, metadata.getJavaType(), metadata.getCollectionName()); } WriteResult writeResult = operations.remove(query, metadata.getJavaType(), metadata.getCollectionName()); diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/query/AbstractMongoQueryUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/query/AbstractMongoQueryUnitTests.java index ea75a89c4..357075c04 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/query/AbstractMongoQueryUnitTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/query/AbstractMongoQueryUnitTests.java @@ -96,6 +96,7 @@ public class AbstractMongoQueryUnitTests { /** * @see DATAMONGO-566 + * @see DATAMONGO-1040 */ @SuppressWarnings("unchecked") @Test @@ -106,7 +107,8 @@ public class AbstractMongoQueryUnitTests { createQueryForMethod("deleteByLastname", String.class).setDeleteQuery(true).execute(new Object[] { "booh" }); - verify(this.mongoOperationsMock, times(1)).findAllAndRemove(Matchers.any(Query.class), Matchers.eq(Person.class)); + verify(this.mongoOperationsMock, times(1)).findAllAndRemove(Matchers.any(Query.class), Matchers.eq(Person.class), + Matchers.eq("persons")); } /**