Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

cursor.addOption()

Nesta página

  • Definição
  • Compatibilidade
  • Flags
  • Exemplo
cursor.addOption(flag)

Importante

Método mongosh

Esta página documenta um método mongosh. Esta não é a documentação de um driver de idioma específico, como Node.js.

Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.

Observação

Descontinuado desde a v3.2

A partir de v3.2, o operador cursor.addOption() é preterido em mongo. Use os métodos de cursor disponíveis.

Usado para alterar o comportamento da query definindo os sinalizadores listados abaixo.

O método cursor.addOption() tem o seguinte parâmetro:

Parâmetro
Tipo
Descrição
flag
flag
Para mongosh, você pode usar os sinalizadores de cursor listados abaixo. Para obter a lista específica de drivers, consulte a documentação do driver.

Esse método está disponível em implantações hospedadas nos seguintes ambientes:

  • MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem

Importante

Este comando tem suporte limitado em M0, M2, M5 e M10+ clusters. Para obter mais informações, consulte Comandos não suportados.

  • MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB

  • MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB

mongosh fornece vários sinalizadores de cursor adicionais para modificar o comportamento do cursor.

bandeira
Descrição
DBQuery.Option.tailable
Define o cursor para não fechar assim que os últimos dados forem recebidos, permitindo que a query continue retornando dados adicionados após os resultados iniciais se esgotarem.
DBQuery.Option.slaveOk
Permite a query de uma réplica secundária.
DBQuery.Option.noTimeout
Impede que o servidor atinja o tempo limite de cursores ociosos.
DBQuery.Option.awaitData
Para uso com DBQuery.Option.tailable. Define o cursor para bloquear o thread de query quando nenhum dado estiver disponível e aguardar os dados por um tempo definido no lugar de não retornar nenhum dado imediatamente. O cursor só não retorna dados se o tempo limite expirar.
DBQuery.Option.exhaust
Define o cursor para retornar todos os dados retornados pela query de uma só vez, em vez de dividir os resultados em lotes.
DBQuery.Option.partial
Define o cursor para retornar dados parciais de uma query em um cluster fragmentado no qual alguns shards não respondem em vez de lançar um erro.

O exemplo a seguir adiciona o sinalizador DBQuery.Option.tailable e o sinalizador DBQuery.Option.awaitData para garantir que a query retorne um cursor persistente. A sequência cria um cursor. Depois de retornar o conjunto completo de resultados, ele aguarda o intervalo padrão de 1000 milissegundos para poder capturar e retornar dados adicionais adicionados durante a query:

var t = db.myCappedCollection;
var cursor = t.find().addOption(DBQuery.Option.tailable).
addOption(DBQuery.Option.awaitData)

Aviso

Adicionar sinalizadores de protocolo de conexão incorretos pode causar problemas e/ou carga extra do servidor.

Voltar

Cursors