mongo db写入超时的所有节点 - 响应是什么

时间:2013-09-17 17:52:24

标签: mongodb

我正在写一个6节点的mongo集群。 为了强制写入所有节点,我使用写入关注X = 6和超时= 2000。 我的问题:如果mongo无法写入2000毫秒内的所有6个节点会发生什么。 mongo会以“操作失败”或“操作部分成功”回来。

1 个答案:

答案 0 :(得分:2)

我相信你的意思是w = 6并且已经阅读了关于Write Concern的文件。 getLastError的文档解释了getLastError()的可能回复。

你的超时情况下的响应应该类似于MongoDB代码库中的this test case

在您的情况下,w = 6,包含6个节点意味着如果丢失1个节点,则写入将全部返回错误。有没有特别的理由在副本集中使用6个节点?如果只有一个副本集,那么5个节点可以提供相同级别的可用性,即丢失少于大多数,5个中的3个(或6个)是正常的。