当前位置: 首页 > 知识库问答 >
问题:

MongoDBJava客户端允许磁盘使用不工作

仲孙铭
2023-03-14

我在MongoTemplate中使用了allowDiskUse选项:

AggregateIterable<Document> results = mongoTemplate.getCollection("match")
            .aggregate(...).allowDiskUse(true)

并且仍然收到此错误:

超出$group的内存限制,但不允许外部排序。请传递allowDiskUse:true以选择加入。

是不是被窃听了?

请注意,我使用的是mongo java客户端3.11和mongo atlas M2(v4.2.9)

我还尝试了batch大小和use Couror,但它不起作用

共有1个答案

姜弘新
2023-03-14

应该是这样的:

AggregationResults<Document> results = mongoTemplate.aggregate(new Aggregation(aggregationOperation1, aggregationOperation2, aggregationOperation3, ....).withOptions(AggregationOptions.Builder.allowDiskUse(true)), "match", Document.class);

当然,您必须定义聚合操作。

 类似资料:
  • 我有一个具有多个查找的mongo查询,但它返回了一个错误 排序超出了104857600字节的内存限制,但未选择外部排序。正在中止操作。传递allowDiskUse:true以选择加入 我已经在聚合查询中添加了allow disk size true < code>await Service.aggregate(管道)。allowDiskUse(true)。exec();

  • 我有一个包含100万文档的集合…我已经传递了的选项,现在它正在抛出错误 < code>TypeError: callback.apply不是函数 我已经找过了,但能找到解决办法…请帮帮我。 Mongob版本-3.6 猫鼬版本-5.0

  • 在开发 morphia 时,我们遇到了以下错误: MongoDB:排序超出了104857600字节的内存限制 根据指南:http://www . mkyong . com/MongoDB/MongoDB-sort-exceed-memory-limit-of-104857600-bytes/,操作“允许使用磁盘”是解决方案。 我的问题: < li >如果morphia支持allowDiskUse操

  • 我有这个python代码: 我得到了一条错误消息:pymongo.errors。OperationFailure:超出$group的内存限制,但不允许外部排序。传递allowDiskUse:true以选择加入。 我如何使用allowDiskUse: true?

  • 为了简化JavaFx应用程序的使用,我希望允许用户定义一个键盘组合/快捷键来触发应用程序最重要的操作。 我知道如何在代码中定义并将其设置为或在KeyEvent侦听器中使用它,但我希望允许用户只需在键盘上的某个设置对话框中按下它,就可以定义自己的KeyCodeCombination。 基本上沿着这个伪代码:

  • 我有一个wsdl: 我想提交信息以获得回应。我创建了client.php如下: 但它在浏览器中显示错误: SoapFault对象([消息:受保护]= 我错在哪里?对此,可能的解决方案是什么? 编辑: 我已经创建了一个php文件:client。php 但它产生了这个错误: 调用错误:响应不是文本/xml类型:应用程序/wsdl xmlHTTP/1.1 200确定日期:星期二,9月17日2013 15