【问题标题】:How to close cursor in MongoKit如何在 MongoKit 中关闭光标
【发布时间】:2011-07-20 12:33:50
【问题描述】:

我正在使用 MongoKit 对大量数据执行迭代。

在此过程中,我的光标变得无效,我正在获取

OperationFailure: cursor id '369397057360964334' not valid at server

我在邮件列表中看到我可以将参数timeout=False 传递给.find() 方法,但PyMongo FAQ 说我必须自己负责关闭光标。

但我没有在 MongoKit 中找到相关的方法。

我是否需要自己关闭光标,如果需要 - 我该怎么做?

【问题讨论】:

    标签: python mongodb pymongo database-cursor mongokit


    【解决方案1】:

    您必须关闭游标,因为 MongoDB 服务器不会为您超时,因为您明确要求它不要这样做。

    只需在光标上调用del__del__ 的默认 pymongo 实现会通知服务器杀死光标。

    假设如下:

    cursor = db.test.find(timeout=False)
    

    完成后只需执行此操作:

    del cursor
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-08
      • 1970-01-01
      • 2012-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-13
      • 1970-01-01
      相关资源
      最近更新 更多