2014-04-23 45 views
2

我得到MongoDB中去除腐败BSON

"$err" : "BSONElement: bad type 109", "code" : 10320 }
为了确定我所走过的完整集合与pymongo文档并获得 AssertionError: Result batch started from 0, expected 205881

我能够组我基于某些字段,按日期排序,从而降低了搜索空间集合....

我不是能得到确切的文档,但至少有一些范围内找到它...... 试图remove unfortu纳利提出:

BSONObj size: 1597071153 (0x315F315F) is invalid. Size must be between 0 and 16793600(16MB) First element: mall.jpg: ?type=115

任何想法如何,我可以解决这个问题... 感谢

回答

2

如果它是一个副本集我会尝试在二级相同的查询,看看数据是否如果没有问题,就会在那里损坏并转移到第二级。

如果您不在副本集上,我会考虑从备份中恢复,因为此错误表示某处存在某种损坏。

如果你没有备份,我会考虑删除和重新创建索引(有时腐败是在索引中)。

我也会检查你正在运行的mongodb的版本,并且可能升级到最近的稳定版本,以修复任何已知的错误。

不及格我试试数据库修复http://docs.mongodb.org/manual/reference/command/repairDatabase/