我已经研究过其他解决方案,例如:
但是还是有这个错误。我正在尝试将大型 GeoJSON 文件加载到 MongoDB 中。
这是我的代码:https://gist.github.com/mittenchops/6499844
在这里使用迭代 json 解析器:https://github.com/isagalaev/ijson
这是我的错误:
Traceback (most recent call last):
File "upload2mongo.py", line 57, in <module>
main(sys.argv)
File "upload2mongo.py", line 52, in main
loader(renamesh2json(argv[1]), argv[2])
File "upload2mongo.py", line 22, in loader
db[collection].insert(d)
File "/usr/local/lib/python2.7/dist-packages/pymongo/collection.py", line 359, in insert
continue_on_error, self.__uuid_subtype), safe)
File "/usr/local/lib/python2.7/dist-packages/pymongo/mongo_client.py", line 853, in _send_message
raise AutoReconnect(str(e))
pymongo.errors.AutoReconnect: [Errno 104] Connection reset by peer
为什么我会收到有关连接关闭的奇怪错误?
最佳答案
不确定这是否是一个答案,甚至是否有意义,但我在插入序列中又添加了一个循环,这解决了问题。看来我以为我插入的原始对象实际上是文档列表而不是文档级别,并且这是隐式批量插入的---当我认为我实际上是一次插入一个文档时,我以为我是已经在文档级别循环。
似乎在批量插入的过程中,连接关闭了。
关于json - 对等方重置 MongoDB 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18705007/