【发布时间】:2017-11-27 09:15:15
【问题描述】:
我们的一个客户每小时创建一次 mongo 转储并将它们发送给我们。然后,我们重放 oplog。但是,客户决定不再发送所有转储,而只发送紧急情况下调试所需的转储。但是,我担心的是,不发送所有内容会导致我们的本地镜像不一致。
我的主要问题如下:当您重放包含丢失文档的更新操作的操作日志时会发生什么?它会出错还是忽略操作?
为了更好地解释我的意思,这里有一个例子:
- 客户端在 2017 年 11 月 27 日使用
{_id: 1}创建条目 - 同一条目于 2017 年 11 月 28 日首次更新
- 客户端通过 oplog 发送仅包含 2017 年 11 月 28 日之后的操作
- 我们在本地重放 oplog
{_id: 1} 条目的更新操作会发生什么?会出错吗?会不会因为没有文档需要更新这样的_id而被忽略?
附:目前使用的是 mongo 2.4
【问题讨论】:
标签: mongodb mongodb-oplog