在mongodb,atomic存储javascript?

时间:2011-08-27 14:37:37

标签: mongodb transactions

如果我从服务器调用以下存储函数: 假设bEntity的插入失败。在这种情况下,是否将aEntity卷回到旧状态?

function areYouAnAtomicOperation(x)
{
db.aEntity.insert ({a:x});
db.bEntity.insert ({b:x});
db.cEntity.insert ({c:x});
}

任何方法,在mongodb中使这个函数成为原子?

1 个答案:

答案 0 :(得分:1)

不,这不是原子的。以下是atomic operations

的列表

如果真的非常重要,您可以手动模拟two-phase commit语义,但要注意它确实复杂

如果事务很重要,最好使用提供它的其他数据库(RDBMS?)。