首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拉推原子操作?

拉推原子操作?
EN

Stack Overflow用户
提问于 2012-09-17 20:05:10
回答 1查看 2.6K关注 0票数 3

我有一个包含两个数组的文档,我想将一个元素从一个数组移动到另一个数组,我在控制台上尝试了一下,它起作用了:

代码语言:javascript
复制
db.examplecol.update({_id: ObjectId("5056b4b2b9f53a21385076c5")} , {'$pull':{setA:3}, '$push':   {setB:3}})

但我还没有见过一个在一个命令中进行两次更新的例子。我的问题是,这是不是一个原子操作?如果在此操作过程中出现错误,我是否有“丢失”元素的风险,因为它已被拉出但未被推送?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-17 21:48:37

基于MongoDB's Atomic Operations文档,由于您的操作是在单个文档上进行的,因此该操作应该是原子的。您应该确保您使用的是日志记录,因此,如果在更新过程中拉出电源,那么MongoDB将在更新之前恢复到已知的良好状态。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12458798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档