道歉,如果这已经得到解答,但我的谷歌搜索技能似乎处于历史最低点:
想象一个3节点副本集,其写入关注点为3,而日志记录设置为0。
在将成功代码返回主数据库之前,辅助数据是否会将数据提交到日记中?或者数据是否只是简单地提交到辅助节点上的内存?
答案 0 :(得分:1)
在您描述的情况下,关闭日志并在3节点副本集(包括主节点)中将写入关系设置为3,您的WriteConcern 3只需要从每个副本集确认数据已写入内存。
来自these个文档,您可以推断如果' j'是不根据设置时发生的情况设置,但它是特定于版本的:
请求确认mongod实例,如中所述 w:已写入磁盘日志。 j:真的没有 本身保证写入不会因为回滚而被回滚 副本集主要故障转移。
在版本3.2中更改:使用j:true,MongoDB仅在。之后返回 请求的成员数量,包括主要成员,已写入 日记。以前j:仅在副本集中写入真正的写入问题 无论w如何,都要求主要人员写入日记: 写关注。