Menu Docs
Página inicial do Docs
/ /
Referência

Restrições operacionais em clusters fragmentados

$where não permite referências ao objeto db a partir da função $where. Isso é incomum em coleções não compartilhadas.

Para usar operações updateOne() e deleteOne() para uma coleção fragmentada que especifique a opção multi: false ou justOne:

  • Se você segmentar apenas um fragmento, poderá usar uma chave de fragmento parcial na especificação da consulta ou,

  • Você pode fornecer a chave de estilhaço ou o campo _id na especificação de consulta.

Para utilizar o findOneAndUpdate() com uma coleção fragmentada, seu filtro de query deve incluir uma condição de igualdade na chave de fragmentação para comparar a chave e o valor em qualquer um destes formatos:

{ key: value }
{ key: { $eq: value } }

O MongoDB não oferece suporte a índices exclusivos entre shards, exceto quando o índice exclusivo contém a chave completa do shard como um prefixo do índice. Nessas situações, o MongoDB reforçará a exclusividade em toda a chave, não em um único campo.

Dica

Consulte:

Restrições únicas em campos arbitrários para uma abordagem alternativa.

Em um cluster fragmentado, as operações de DDL (Data definition language) são executadas com preocupação de gravação "majority". Se você especificar uma preocupação de gravação diferente, a operação substituirá a preocupação de gravação fornecida por "majority".

Voltar

Referência

Nesta página