pymongo CursorNotFound错误
部分报错如下:
File "D:\anaconda\lib\site-packages\pymongo\cursor.py", line 1189, in next
if len(self.__data) or self._refresh():
File "D:\anaconda\lib\site-packages\pymongo\cursor.py", line 1126, in _refresh
self.__send_message(g)
File "D:\anaconda\lib\site-packages\pymongo\cursor.py", line 982, in __send_message
helpers._check_command_response(first)
File "D:\anaconda\lib\site-packages\pymongo\helpers.py", line 152, in _check_command_response
raise CursorNotFound(errmsg, code, response)
CursorNotFound: cursor id 33632884345 not found
我的操作方式是直接从一个集合中取出所有文档(约1000条),然后依次对每条文档进行操作,中间的操作耗时可能会很长(10分钟以上)。
本来以为是长时间没有操作导致游标自动关闭导致的,于是在find函数中把no_cursor_timeout设置为True,然后在处理第101条记录时候依然出现以上错误。网上搜索,得到来自CSDN的博文:
https://blog.csdn.net/zh0u_f/article/details/72897628
https://blog.csdn.net/gehaixia/article/details/50512549
这两位博主提到:
默认 单次从 server获取数据是101条或者 大于1M小于16M的数据
估计一个 batch 大小,让 MongoDB 客户端每次抓取的文档在 10 分钟内能用完,这样客户端就不得不 10 分钟内至少联系服务器一次,保证 cursor 不超时
于是知道原因就在这,因为只设置了超时参数并没有解决问题,于是就再增加了batch_size参数,我设置为5,再跑的时候,就可以了。
docs = db.collection.find(no_cursor_timeout=True, batch_size=5)
pymongo CursorNotFound错误的更多相关文章
- 航空概论(历年资料,引之百度文库,PS:未调格式,有点乱)
航空航天尔雅 选择题1. 已经实现了<天方夜谭>中的飞毯设想.—— A——美国2. 地球到月球大约—— C 38 万公里3. 建立了航空史上第一条定期空中路线—— B——德国4. 对于孔明 ...
- pymongo "ServerSelectionTimeoutError: No servers found yet" 错误的解决
系统转移过程中,擅自把aptitude安装的mongoengine换成了pip安装,系统启动以后,报这个错误 报错提示: File "/usr/local/lib/python2.7/dis ...
- pymongo: MongoClient opened before fork错误排解
使用pymongo配合flask和gunicorn使用的时候触发以下错误信息: [2017-09-19 15:20: ] [25780] [CRITICAL] WORKER TIMEOUT (pid: ...
- pymongo.errors.BulkWriteError错误排解
在mongodb进行数据库操作的时候触发异常 pymongo Error: pymongo.errors.BulkWriteError: batch op errors occurred 这种问题 ...
- APP 链接ROS时出现pymongo.errors.ServerSelectionTimeoutError: localhost:27017 错误
ROS版本上kinetic ,APP是官网开源的make a map,当app链接ROS进行建图时,会出现报错:pymongo.errors.ServerSelectionTimeoutError: ...
- pymongo错误记录
1.AutoReconnect pymongo.errors.AutoReconnect: connection closed 2.ServerSelectionTimeoutError pymong ...
- 【PyMongo】连接10055错误的处理--windows7
http://stackoverflow.com/questions/25621893/mongodump-utility-raise-socketexception
- mongodb pymongo.errors.CursorNotFound: Cursor not found, cursor id: 82792803897
默认 mongo server维护连接的时间窗口是十分钟 默认 单次从 server获取数据是101条或者 大于1M小于16M的数据 所以默认情况下,如果10分钟内未能处理完数据,则抛出该异常. 解决 ...
- [pymongo] pymongo.errors.CursorNotFound Exception
由於find之後,loop執行時間過長導致timeout, cusor失效 解決方式有以下幾種: 1. 使用batch_size() cursor = collection.find({}).batc ...
随机推荐
- 2018ICPC网络赛(焦作站)K题题解
一.题目链接 https://nanti.jisuanke.com/t/31720 二.题意 给$N$种船只,第$i$种船的载重量是$V_i$,数量是$2^{C_i}-1$.接下来有$Q$次询问,每次 ...
- 小项目,吃货联盟,java初级小项目,源代码
1:项目的实现效果.功能如图所示. 2:项目的源代码如下: import java.util.Scanner; /** * 吃货联盟订餐管理系统 * */ public class OrderingM ...
- css3网站收集
把群里大家推荐的网站做了下收集,等有时间了研究下 1.http://icomoon.io/app/ 这个网站用来生成跟导出字体图标的,自带的图标种类很多很丰富,基本够用了,不过你也可以自己设计,然后 ...
- css选择器, first-child,first-of-type
选择制定的classname var li = $('.list-tab-group li.active'); <ul class="list-tab-group"> ...
- Tornado之链接数据库
5 数据库 知识点 torndb安装 连接初始化 执行语句 execute execute_rowcount 查询语句 get query 5.1 数据库 与Django框架相比,Tornado没有自 ...
- jquery函数写法
普通jquery函数写法 <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script&g ...
- php中点击链接直接下载图片
最近需要一个功能,是点击链接,直接把图片下载下来,一般情况下,图片是在新页直接打开的,不会自动提示下载,在网上找来找,用这个挺好使,代码如下: $filename = basename($downfi ...
- 谈谈 Python 程序的运行原理
因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的 ...
- 28. centos 5.6添加用户时报copydir(): preserving permissions for /home/xxx/.mozilla: Operation not supported错
当执行useradd xxx报如下错:copydir(): preserving permissions for /home/xxx/.mozilla: Operation not supported ...
- MYSQL三大范式
第一范式:确保每列的原子性. 第一范式是最基本的范式. 数据库表中的字段都是单一属性的,不可再分. 只要是关系数据库都满足第一范式 如果每列(或者每个属性)都是不可再分的最小数据单元(也称为最小的原子 ...