PHP Conference Japan 2024

MongoDB\Driver\Manager::startSession

(mongodb >=1.4.0)

MongoDB\Driver\Manager::startSession為此客戶端啟動新的客戶端會期

描述

final public MongoDB\Driver\Manager::startSession(?array $options = null): MongoDB\Driver\Session

為給定的選項建立 MongoDB\Driver\Session。然後,在執行命令、查詢和寫入操作時可以指定此會期。

注意 MongoDB\Driver\Session 只能與建立它的 MongoDB\Driver\Manager 一起使用。

參數

options

options
選項 類型 描述 預設值
causalConsistency bool

在會期中設定因果一致性。如果為 true,則會期中的每個操作都將在先前的讀取或寫入操作之後以因果順序排列。設定為 false 可停用因果一致性。

請參閱 MongoDB 手冊中的「因果一致性」以取得更多資訊。

true
defaultTransactionOptions array

要套用於新建立交易的預設選項。除非在啟動交易時針對每個選項使用不同的值覆寫這些選項,否則將會使用這些選項。

options
選項 類型 描述
maxCommitTimeMS integer

允許單個 commitTransaction 命令執行的最長時間(以毫秒為單位)。

如果指定,則 maxCommitTimeMS 必須是帶正負號的 32 位元整數,且大於或等於零。

readConcern MongoDB\Driver\ReadConcern

要套用於操作的讀取關注。

此選項在 MongoDB 3.2+ 中可用,如果為舊版伺服器指定此選項,則會在執行時產生例外。

readPreference MongoDB\Driver\ReadPreference

用於選擇操作伺服器的讀取偏好設定。

writeConcern MongoDB\Driver\WriteConcern

要套用於操作的寫入關注。

此選項在 MongoDB 4.0+ 中可用。

[]
snapshot bool

在會期中設定快照讀取。如果為 true,則將從會期中第一個支援的讀取操作(即 findaggregate 或未分區的 distinct)中取得時間戳記。然後,會期中後續的讀取操作將使用 "snapshot" 讀取關注等級來讀取該時間戳記中大多數已提交的資料。設定為 false 可停用快照讀取。

快照讀取需要 MongoDB 5.0+,且不能與因果一致性、交易或寫入操作一起使用。如果 "snapshot"true,則 "causalConsistency" 將預設為 false

請參閱 MongoDB 手冊中的「讀取關注「快照」」以取得更多資訊。

false

傳回值

傳回 MongoDB\Driver\Session

錯誤/例外

變更記錄

版本 描述
PECL mongodb 1.11.0

新增了 "snapshot" 選項。

PECL mongodb 1.6.0

"maxCommitTimeMS" 選項新增至 "defaultTransactionOptions"

PECL mongodb 1.5.0

新增了 "defaultTransactionOptions" 選項。

新增註解

使用者貢獻的註解

此頁面沒有使用者貢獻的註解。
To Top