响应式 mongo 模板:mongo 4.4.0 上的“需要 'cursor' 选项”

Reactive mongo template: "'The 'cursor' option is required" on mongo 4.4.0

如标题所示,我收到错误消息,我应该将光标选项与以下代码一起使用:

    public Mono<Test> someMethod(String param) {
        return reactiveMongoTemplate.aggregate(Aggregation.newAggregation(X.class,
                        Aggregation.match(Criteria.where("test").is(param)),
                        Aggregation.group("field")
                                .first("value").as("value")
                                .first("test").as("test"),
                        Aggregation.group()
                                .first("test").as("test")
                                .push(new BasicDBObject()
                                        .append("k", "$_id")
                                        .append("v", "$value")
                                )
                                .as("array"),
                        Aggregation.replaceRoot(
                                MergeObjects.merge(
                                        new BasicDBObject().append("_id", "$test"),
                                        ArrayToObject.arrayValueOfToObject("array")
                                )
                        ),
                        Aggregation.project(getFields()),
                        Aggregation.merge()
                                .into(MergeOperationTarget.collection("test"))
                                .on("id")
                                .build()
                ).withOptions(AggregationOptions.builder().allowDiskUse(true).build()), Test.class)
                .single();
    }

我们最近从 mongo 版本 3.5.5 升级到 4.4.0 以支持合并操作(从 4.2.0 开始支持),现在我们收到此错误。请记住,这是反应式 mongo 模板,来自 org.springframework.data.mongodb.core(当前版本为 3.2.2)。

我确实尝试在聚合选项中添加 cursorBatchSizecursor 但没有任何结果,或者我在那里做错了什么?我只是想知道它是否已经可用于反应式 mongo 模板。这也是来自 flapdoodle 库的嵌入式 mongo 实例。

完全错误:InvalidDataAccessApiUsageException "The 'cursor' option is required, except for aggregation explain", "code": 9, "codeName": "FailedToParse"

所以我们只是从嵌入式到 dockerized mongo 实例,这解决了很多问题,例如机器 os