PHP Conference Japan 2024

MongoDB\Driver\Session::startTransaction

(mongodb >=1.5.0)

MongoDB\Driver\Session::startTransaction启动事务

描述

final public MongoDB\Driver\Session::startTransaction(?array $options = null): void

启动与会话关联的多文档事务。在任何给定时间,您最多只能为一个会话打开一个事务。启动事务后,必须通过"session"选项(例如 MongoDB\Driver\Manager::executeBulkWrite())将会话对象传递给每个操作,以便将该操作与事务关联。

可以通过 MongoDB\Driver\Session::commitTransaction() 提交事务,并通过 MongoDB\Driver\Session::abortTransaction() 中止事务。当会话从垃圾回收关闭或通过显式调用 MongoDB\Driver\Session::endSession() 关闭时,事务也会自动中止。

参数

options

可以将选项作为参数传递给此方法。此选项数组中的每个元素都将覆盖"defaultTransactionOptions"选项中的相应选项(如果在使用 MongoDB\Driver\Manager::startSession() 启动会话时设置)。

options
选项 类型 描述
maxCommitTimeMS 整数

允许单个commitTransaction命令运行的最长时间(以毫秒为单位)。

如果指定,maxCommitTimeMS必须为大于或等于零的有符号32位整数。

readConcern MongoDB\Driver\ReadConcern

要应用于操作的读取关注点。

此选项在MongoDB 3.2+中可用,如果为较旧的服务器版本指定此选项,则会在执行时导致异常。

readPreference MongoDB\Driver\ReadPreference

用于为操作选择服务器的读取偏好。

writeConcern MongoDB\Driver\WriteConcern

要应用于操作的写入关注点。

返回值

不返回任何值。

错误/异常

变更日志

版本 描述
PECL mongodb 1.6.0

添加了"maxCommitTimeMS"选项。

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top