Node.js 有没有办法向mongoose.js聚合提供allowDiskUse选项?
我正在对大约300k+条记录的集合进行聚合,这需要多次展开和重新组合。我遇到了以下错误Node.js 有没有办法向mongoose.js聚合提供allowDiskUse选项?,node.js,mongodb,mongoose,aggregation-framework,Node.js,Mongodb,Mongoose,Aggregation Framework,我正在对大约300k+条记录的集合进行聚合,这需要多次展开和重新组合。我遇到了以下错误 'exception: Exceeded memory limit for $group, but didn\'t allow external sort. Pass allowDiskUse:true to opt in.' 我似乎不知道如何通过使用mongoose.js API来传递此选项?我们现在没有帮助程序,但mongoose 3.8.12中将包含一个allowDiskUse()helper函数,我
'exception: Exceeded memory limit for $group, but didn\'t allow external sort. Pass allowDiskUse:true to opt in.'
我似乎不知道如何通过使用mongoose.js API来传递此选项?我们现在没有帮助程序,但mongoose 3.8.12中将包含一个
allowDiskUse()
helper函数,我今天将发布该函数:
如果您想要即时解决方案或不想升级到3.8.12(尽管建议升级),可以执行以下操作:
var aggregation = MyModel.aggregate(...);
aggregation.options = { allowDiskUse: true };
aggregation.exec(function() {});
如何使用承诺?
Model.aggregate(..).allowDiskUse(true).exec(callback)