多个 Realm 客户端显示新信息但 MongoDB 显示旧信息

Multiple Realm clients showing new information but MongoDB showing old

我们今天遇到的非常奇怪的错误。

我们有一个 iOS 应用程序,它使用 Realm SDK 更新了文档,我知道它已成功推送,因为我检查了 forCurrentlyOutstandingWork 会话以确认 100% 上传并打开了另一个设备来验证它是否获得了新的更新信息并且它已经获得了。

问题是即使跨多个设备的 Realm 客户端显示了新的更新信息,MongoDB 也没有显示新的更新信息。它确实在 15 分钟后自动更新,但这个问题今天在我们身上发生了多次。

有没有其他人遇到过这个问题并找到了解决方案?或者这永远不会发生,我们需要报告错误?

TIA

编辑: 领域同步写入日志 -

Logs:
[
  "Upload message contained 1 changeset(s)",
  "Integrating upload required conflict resolution to be performed on 0 of the changesets",
  "Latest server version is now 249"
]
Partition:

1
Write Summary:
{
  "Image": {
    "updated": [
      "612ce539db1dbb2655f6c723"
    ]
  }
}

这是 MongoDB/Realm 中的一个问题。我联系了支持人员,他们通过在 2021 年 9 月 9 日.

推送更新解决了这个问题

到 MongoDB 的复制是异步的,因为必须对来自 MongoDB 客户端(同步不控制)的传入写入执行冲突解决,以防止写入对 MongoDB 的写入和由 Realm 客户端进行的写入相互传递并使两个状态不一致。理想情况下,这些写入应该在几毫秒内发生,但偶尔会出现一些延迟(尤其是在服务器重启时),但我们会密切监视这一点,并一直在寻求优化这一点。

  • 同步团队的工程师