如何实现mongo事务的回滚?
我在mongodb上使用mongoose。
在来自nodejs express服务器的请求和响应中,通常需要通过mongoose进行mongodb的查询。
在许多情况下,如果首先几个查询成功执行并且在事务下全部失败,则可能发生这种情况。
现在我需要将db状态回滚到db的初始状态。
那么我怎样才能有效地在mongodb回滚? 请提供一些合适的参考。
我同意赫克托。 如果你需要多个文件交易,那么Mongo可能不适合你。 你能把你的数据结构embedded到单个文档中吗? 然后你可以得到你正在寻找的回滚。
另一个select是查看提供跨多个文档的事务的Mongo克隆TokuMX。
通过Mongo教程
这里是一个链接,我发现进行两阶段提交(可能是不能保证):
http://docs.mongodb.org/manual/tutorial/perform-two-phase-commits/
在MongoDB中不支持传统的ACID数据库事务,无论你放在哪个顶层。 这不是Mongoose或Express.js的问题,这是MongoDB的特点。
MongoDB支持primefaces操作,这意味着保存到一个集合是保证完全成功或失败,换句话说,你将不会获得对集合中单个文档的部分更新。 但是在单个事务中不支持多更新。
http://docs.mongodb.org/manual/faq/fundamentals/#does-mongodb-support-transactions