MongoDB\Driver\Session::startTransaction

(mongodb >=1.5.0)

MongoDB\Driver\Session::startTransactionCommence une transaction

Description

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

Commence une transaction multi-document associée à la session. À un moment donné, vous ne pouvez avoir qu'une seule transaction ouverte pour une session. Après avoir commencé une transaction, l'objet de session doit être passé à chaque opération via l'option "session" (par exemple MongoDB\Driver\Manager::executeBulkWrite()) pour associer cette opération à la transaction.

Les transactions peuvent être confirmées via MongoDB\Driver\Session::commitTransaction(), et annulées avec MongoDB\Driver\Session::abortTransaction(). Les transactions sont également automatiquement annulées lorsque la session est fermée par la collecte des ordures ou en appelant explicitement MongoDB\Driver\Session::endSession().

Liste de paramètres

options

Les options peuvent être passées en argument à cette méthode. Chaque élément de ce tableau d'options remplace l'option correspondante de l'option "defaultTransactionOptions", si définie lors du démarrage de la session avec MongoDB\Driver\Manager::startSession().

options
Option Type Description
maxCommitTimeMS integer

Le temps maximum en millisecondes pour permettre à une seule commande commitTransaction de s'exécuter.

Si spécifié, maxCommitTimeMS doit être un entier 32 bits signé supérieur ou égal à zéro.

readConcern MongoDB\Driver\ReadConcern

Une préoccupation de lecture à appliquer à l'opération.

Cette option est disponible dans MongoDB 3.2+ et se traduira par une exception au moment de l'exécution si elle est spécifiée pour une version plus ancienne du serveur.

readPreference MongoDB\Driver\ReadPreference

Une préférence de lecture à utiliser pour sélectionner un serveur pour l'opération.

writeConcern MongoDB\Driver\WriteConcern

Une préoccupation d'écriture à appliquer à l'opération.

Valeurs de retour

Aucune valeur n'est retournée.

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.
  • Lance une MongoDB\Driver\Exception\CommandException si la transaction n'a pas pu être démarrée en raison d'un problème côté serveur (par exemple, un verrou n'a pas pu être obtenu).
  • Lance une MongoDB\Driver\Exception\RuntimeException si la transaction n'a pas pu être démarrée (par exemple, une transaction était déjà en cours).

Historique

Version Description
PECL mongodb 1.6.0

L'option "maxCommitTimeMS" a été ajoutée.

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top