DBAtlas · Atlas d'exploitation des bases de données

263 OperationNotSupportedInTransaction: Operation not supported inside a multi-document transaction (opération non prise en charge dans une transaction multi-documents)

MongoDB

Que signifie cette erreur ?

Une opération non prise en charge dans ce contexte a été tentée dans une transaction multi-documents. Certaines commandes (notamment certaines opérations DDL et de métadonnées) ne peuvent pas s'exécuter dans une transaction.

Cause

Opérations non prises en charge dans la transaction, comme la création de collections/d'index (selon la version) ; certaines commandes de type count/list ; ou des commandes d'administration non valides dans une session transactionnelle. Les anciennes versions de MongoDB ne prennent pas en charge le DDL dans les transactions (une partie est arrivée avec 4.4+).

Comment la corriger

Sortez l'opération non prise en charge de la transaction (par ex. créez les collections/index nécessaires avant le début de la transaction). Vérifiez votre version de MongoDB ; 4.4+ prend en charge une partie du DDL dans les transactions. Exécutez l'opération dans une session distincte du driver. Limitez la transaction aux opérations CRUD prises en charge.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur