mongodb和pymongo 16Mb限制文档大小

 红Lisa 发布于 2022-12-25 12:25

我在Windows上使用'/ showIncludes'分析构建中的包含,在*nix,flags上分析'-H'.

我正在用python脚本解析这个信息.包含的每个文件都会变成一个对象,列出其子项(包含的文件)和祖先(包含此文件的包含路径).

创建这些对象后,我想使用pymongo将它们推入mongodb数据库.

这适用于99%的包含.但是~5非常大.当我尝试将它们添加到mongodb时,它会抱怨.

Traceback (most recent call last):
  File "mongodb.py", line 94, in 
    includes_collection.update({'id': include.include_id}, { 'ancestor_tree': ancestor_tree_ids } )
  File "C:\Python27\lib\site-packages\pymongo-2.7.2-py2.7-win-amd64.egg\pymongo\collection.py", line 551, in update
    docs, check_keys, self.uuid_subtype, client)
DocumentTooLarge: command document too large

阅读mongo这似乎是一个设计选择.默认情况下,文档不能超过16Mb.但是可以使用--nssize命令行选项覆盖它.看到

http://docs.mongodb.org/manual/reference/program/mongod/#bin.mongod

所以我用--nssize 32/64/128重新运行了mongod.我认为我的任何包含对象都不超过128Mbs.但问题仍然存在.

所以我现在想知道是否应该责怪pymongo.它是否尊重此服务器设置?

我的mongod版本是

db version v2.6.3 2014-08-28T16:56:51.534 + 0100 git version:255f67a66f9603c59380b2a389e386910bbb52cb

我正在使用pymongo-2.7.2-py2.7-win-amd64.

无论如何都可以解决这个限制吗?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有