代码之家  ›  专栏  ›  技术社区  ›  kostix

替换操作:其写入阶段相对于其过滤阶段是否具有原子性?

  •  0
  • kostix  · 技术社区  · 4 年前

    我们正在使用 replaceOne 对集合执行的操作,该操作使用“filter”子句检查它是否要用具有特定值的特定字段更新文档。

    一切都很好,但由于集合中的文档是由并行工作的多方更新的,我想知道是否可以保证在过滤器找到要替换的文档(即过滤器)之间 已匹配, 并且该文档被替换,则该文档不可能被并发运行的操作替换。我在MongoDB文档中找不到任何关于这一点的声明。

    我们正在使用MongoDB 3.6(请不要问为什么),所以使用事务是不可能的。

    0 回复  |  直到 4 年前