MongoDB脚本在游标上进行多次迭代后挂起

时间:2014-11-17 23:22:32

标签: javascript mongodb cursor

我用JavaScript编写了一个脚本,它按批次迭代游标。首先,我使用cursor.batchSize(500)将批量大小设置为500.然后我使用cursor.objsLeftInBatch()来确定当前批次中剩余的对象数量。我使用命令处理它们,然后再次启动该过程,直到cursor.hasNext()返回 falsy 值。

这可以很好,直到它处理一些元素。可能是数百万。然后脚本完全冻结了几个小时。但那没关系,因为在那段时间之后它会恢复并再次运作良好。但是,在处理了另一大块元素之后,它会冻结并拒绝重新开始工作。我正在等待这个过程继续,因为我在这里写,但它已经是一整天了。该脚本似乎正在做某事( 使用CPU),但我不知道这些脚本一直在花费什么。需要明确的是:RAM和磁盘都没有饱和。

非常感谢任何帮助。

0 个答案:

没有答案