如何在游标上指定no-timeout选项?

Tyr*_*yra 10 ruby mongodb

如何在游标上指定no-timeout选项?

我可以手动和从我的笔记本电脑运行作业,但服务器上有一些东西,我一直收到这个错误:

MONGODB cursor.refresh()用于游标xxx查询响应返回CURSOR_NOT_FOUND.指定了无效游标,或者游标可能已在服务器上超时.游标yyy的MONGODB cursor.refresh()

该作业是从ruby调度程序文件运行的,并且在rake rake中指定为命名空间,调用中间的另一个ruby模块,并且该作业在执行此模块时死亡

早些时候问过这个问题而且它被投票了.请,而不是downvoting解释什么是如此愚蠢,因为我真的需要解决这个问题,无法弄清楚发生了什么.

服务器是实验性的,没有任何监控工具.但它似乎是可靠的.而且没有其他工作在运行.

Joh*_*yHK 13

有关如何关闭游标超时的详细信息,请参阅Ruby MongoDB驱动程序的FAQ.

那里的例子:

@collection.find({}, :timeout => false) do |cursor|
   cursor.each do |document
     # Process documents here
   end
end
Run Code Online (Sandbox Code Playgroud)