263 OperationNotSupportedInTransaction: Operation not supported inside a multi-document transaction (operação não suportada dentro de uma transação multidocumento)
MongoDBO que significa?
Houve a tentativa de executar, dentro de uma transação multidocumento, uma operação não suportada nesse contexto. Alguns comandos (notadamente certas operações de DDL e de metadados) não podem ser executados dentro de uma transação.
Por que acontece?
Operações não suportadas dentro da transação, como criar coleções/índices (dependendo da versão); certos comandos do tipo count/list; ou comandos administrativos não válidos em uma sessão de transação. Versões antigas do MongoDB não suportam DDL dentro de transações (parte disso chegou com a 4.4+).
Como resolver
Mova a operação não suportada para fora da transação (por exemplo, crie as coleções/índices necessários antes de a transação começar). Verifique sua versão do MongoDB; a 4.4+ suporta parte do DDL dentro de transações. Execute a operação em uma sessão separada no driver. Limite a transação às operações CRUD suportadas.
Mais entradas deste banco
- 134ReadConcernMajorityNotAvailableYet
- 202NetworkInterfaceExceededTimeLimit
- 31 RoleNotFoundRole not found
- 20 IllegalOperationIllegal operation
- 48 NamespaceExistsNamespace (collection) already exists
- 11601 InterruptedOperation was interrupted
- 85 IndexOptionsConflictIndex already exists with different options / different name (o índice já existe com outras opções / outro nome)