我有一个集合,其中包含数百万个对象,仅在一台服务器中。我设置了一个配置服务器和 2 个分片节点,其中一个拥有该集合文档。在我将集合添加为分片后,一切看起来都很好。但是发生了一些奇怪的事情,如果我一直询问集合的大小,mongod 正在分片该集合:db.activity_items.count()
数量正在减少。为什么?我在某处丢失任何数据吗?
这是一些控制台输出,只是为了说明问题:
mongos> db.activity_items.count()
19107620
mongos> db.activity_items.count()
19107223
mongos> db.activity_items.count()
19106939
mongos> db.activity_items.count()
19106922
mongos> db.activity_items.count()
19027118
编辑
如果我运行db.activity_items.stats();
http://pastebin.com/85RqZmQM。它表明第一个分片节点正在减少计数器,而第二个分片节点没有增加它的计数器。这让我觉得我的数据陷入了困境.?。
编辑 2
我停止了平衡器。它停止丢失数据,但是我的旧数据没有回来..
mongos> db.activity_items.count()
15736936
编辑 3
我填写了一个关于它的错误:https ://jira.mongodb.org/browse/SERVER-6696