mongodb native foreach不会返回所有文档
我正在尝试更新所有数据库文档,但在尝试简单使用foreach之后,我可以看到它并没有返回所有文档 也许mongo限制了这个函数的文档数量我不知道。。。 (我正在运行来自robomongo shell的脚本)mongodb native foreach不会返回所有文档,mongodb,mongodb-query,robo3t,Mongodb,Mongodb Query,Robo3t,我正在尝试更新所有数据库文档,但在尝试简单使用foreach之后,我可以看到它并没有返回所有文档 也许mongo限制了这个函数的文档数量我不知道。。。 (我正在运行来自robomongo shell的脚本) 如果输出值发生变化,我很确定服务器会在超时时退出,在做了一些研究之后,我发现.addOptions()在mongodb 3.2中,尝试使用db.collection.find({}).noCursorTimeout()好的,我终于发现了问题,它来自robomongo,我不知道为什么,但是当我
如果输出值发生变化,我很确定服务器会在超时时退出,在做了一些研究之后,我发现.addOptions()在mongodb 3.2中,尝试使用
db.collection.find({}).noCursorTimeout()
好的,我终于发现了问题,它来自robomongo,我不知道为什么,但是当我直接在mongo shell中运行脚本时,它工作了。你的集合是否被切分了?不是简单的集合,这是在mlab上,但我使用mongodump到我的本地机器上检查是否是由于它们的原因,但在本地出现问题…如果你尝试db.visitors.find().count()
,你会得到什么?
db.visitors.count(); // return 2219663
var count = 0;
db.visitors.find().addOption(DBQuery.Option.noTimeout).forEach(function(visitor) {
count++;
});
print('total:' +count); // return only 44192 or 45575 it can change...