MongoDB:$ inc在切换主数据库后立即使用

时间:2019-07-17 13:21:50

标签: mongodb

假设我执行了以下步骤:

第0步:有一个包含3个mongod节点和一个文档的副本集:

{_id: 1, value: 5}

节点[1]是主节点。

步骤1 :客户端已通过writeConcern = 'majority'执行以下操作:

collection.findOneAndUpdate({_id: 1}, {$inc: {value: 1}})

节点[1]和[2]已立即更新为值6,而节点[3]尚未更新。

第2步:由于自动故障转移节点[3]已成为主要节点。

第3步:客户端再次在节点[3]上执行了$inc操作(尽管它仍然没有收到更新的值):

collection.findOneAndUpdate({_id: 1}, {$inc: {value: 1}})

mongodb可以为最后的操作提供哪些保证? 会失败吗?它可以将值更新为7以外的值吗?

0 个答案:

没有答案