MongoDB原子upsert:true,不带唯一索引

时间:2019-06-06 20:31:21

标签: mongodb mongodb4.0

我正在尝试将upsert选项设置为true来实现操作符$setOnInsert。这是为了防止在文档已经存在的情况下无法创建文档。

要查找现有文档,可以在文档的任何属性中执行搜索。因此,我不能只是在文档的所有属性上创建唯一索引。根据我的理解,the query and the create are not atomic and it is possible to create duplicates

我的问题是,如何在没有唯一索引的情况下使upsert成为原子的?既然没有关于这种情况的文档,那么我对这个要求是否很幸运?

MongoDB引入了事务。我们可以结合使用事务和upsert: true来对查询和创建执行原子操作吗?不幸的是,阅读交易文档后,我无法给出答案。

0 个答案:

没有答案