abortTransaction
定义
abortTransaction
终止多文档事务,并回滚事务内操作所做的任何数据更改。也就是说,事务结束而不会保存操作所做的任何更改。
提示
在
mongosh
中,此命令也可以通过Session.abortTransaction()
辅助方法执行.辅助方法对
mongosh
用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。在不需要便利性或需要额外返回字段的情况下,请使用数据库命令。要运行
abortTransaction
,必须对admin
数据库执行命令,并在Session()
内执行。
兼容性
此命令可在以下环境中托管的部署中使用
MongoDB Atlas:云中MongoDB部署的完全托管服务
注意
此命令支持所有MongoDB Atlas集群。有关Atlas对所有命令的支持信息,请参阅不受支持的命令。
MongoDB Enterprise:基于订阅的、自行管理的MongoDB版本
MongoDB Community:开源、免费使用、自行管理的MongoDB版本
语法
该命令具有以下语法
db.adminCommand( { abortTransaction: 1, txnNumber: <long>, writeConcern: <document>, autocommit: false, comment: <any> } )
行为
原子性
当事务终止时,事务中所有写入操作所做的数据更改都被丢弃,永远不会变得可见,事务结束。
安全性
如果开启审计功能,则终止事务中的操作仍然会被审计。