的mongodb:// USER:PASS@MYMONGO1.com:1234,MYMONGO2.com:1234 / DB_NAME replicaSet = REPLICA_SET_NAME
我每天记录一次特定的计数(每次都有相同的参数):
db.Products({"Package": "Box"}).count()
// actual code running in C#:
productsCollection.Find(p => p.Package == "Box").Count()
我希望每天结果相同或更高。 但有时我会得到一个较小的值。第二天它再次变得正确。它在两种不同的环境中重现。
示例:
我试图通过C#和Mongo直接手动重现它,但是失败了(值总是正确的。)
发生了什么?
答案 0 :(得分:2)
这可能是由于执行代码时正在进行平衡循环。 来自MongoDB文档:
在分片群集上,db.collection.count()可以生成 如果存在孤立文档或块迁移,则计数不准确 正在进行中。
更多相关信息:MongoDB documentation
要获得确切的结果,应使用聚合框架查询