MongoDB\Driver\Manager::startSession

(mongodb >=1.4.0)

MongoDB\Driver\Manager::startSession β€” ЗапускаСт Π½ΠΎΠ²Ρ‹ΠΉ клиСнтский сСанс для использования с этим ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ

ОписаниС

final public function 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, врСмСнная ΠΌΠ΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ чтСния Π² сСссии (Ρ‚.Π΅. find, aggregate ΠΈΠ»ΠΈ unsharded distinct). ΠŸΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ чтСния Π² Ρ€Π°ΠΌΠΊΠ°Ρ… сСссии Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ чтСния "snapshot" для чтСния Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Ρ‘Π½Π½Ρ‹Ρ… Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ, ΠΈΠ· этой Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΊΠΈ. УстановитС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ чтСния ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… снимков.

Для чтСния ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… снимков трСбуСтся MongoDB 5.0+, ΠΈ ΠΈΡ… нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π½ΠΎ-согласованной связью, транзакциями ΠΈΠ»ΠΈ опСрациями записи. Если "snapshot" Ρ€Π°Π²Π΅Π½ true, "causalConsistency" ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ false.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Β»Β Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡŽ чтСния "snapshot" Π² руководствС MongoDB для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

false

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ MongoDB\Driver\Session.

Ошибки

  • ΠŸΡ€ΠΈ ошибкС парсинга Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ MongoDB\Driver\Exception\InvalidArgumentException.
  • ВыбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ MongoDB\Driver\Exception\InvalidArgumentException Ссли ΠΎΠΏΡ†ΠΈΠΈ "causalConsistency" ΠΈ "snapshot" Ρ€Π°Π²Π½Ρ‹ true.
  • ВыбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ MongoDB\Driver\Exception\RuntimeException Ссли сСанс Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создан (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, libmongoc Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅).

Бписок измСнСний

ВСрсия ОписаниС
PECL mongodb 1.11.0

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "snapshot".

PECL mongodb 1.6.0

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "maxCommitTimeMS" Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² "defaultTransactionOptions".

PECL mongodb 1.5.0

Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция "defaultTransactionOptions".

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы