setIndexCommitQuorumAltera o número mínimo de membros portadores de dados (ou seja, quórum para a confirmação), incluindo o primário, que deve concluir umaconstrução de índice simultânea em andamento antes que o primário marque esses índices como prontos.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Observação
Este comando é aceito em todos os clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, 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
Sintaxe
O comando tem a seguinte sintaxe:
db.runCommand( { setIndexCommitQuorum: <string>, indexNames: [ <document> ], commitQuorum: <int> | <string>, comment: <any> } )
Campos de comando
O comando utiliza os seguintes campos:
Campo | Tipo | Descrição |
|---|---|---|
| O nome da collection para a qual os índices estão sendo construídos. | |
| Uma array de construções de índices em andamento para modificar. Cada elemento da array deve ser o nome do índice. Os índices especificados para | |
| O número mínimo de nós do conjunto de réplicas contendo dados (ou seja, quórum para a confirmação), incluindo o primário, que deve relatar uma construção de índice bem-sucedida antes que o primário marque o A partir de MongoDB v5.0, é possível retomar algumas construções de índice interrompidas quando o commit quorum está definido como Nós do conjunto de réplicas em um quorum para o commit devem ter suporta os seguintes valores:
| |
| any | Opcional. Um comentário fornecido pelo usuário para anexar a este comando. Depois de definido, esse comentário aparece junto com os registros desse comando nos seguintes locais:
Um comentário pode ser qualquer tipo BSON válido (string, inteiro, objeto, array etc). |
Comportamento
Observação
Exige featureCompatibilityVersion 4.4+
Cada mongod no conjunto de réplica ou agrupamento fragmentado deve ter featureCompatibilityVersion configurado para pelo menos 4.4 para iniciar construções de índice simultaneamente entre membros do conjunto de réplicas.
A emissão setIndexCommitQuorum não tem efeito sobre as compilações de índice iniciadas com commitQuorum de 0.
Importante
Nós do conjunto de réplicas com buildIndexes definido como false não podem ser incluídos em um commit quorum.
Exemplos
Construir índices em um conjunto de réplicas ou cluster particionado é feito simultaneamente em todos os membros do conjunto de réplicas que contêm dados. Para clusters fragmentados, a construção de índices ocorre somente em fragmentos que contêm dados para a coleção que está sendo indexada. O primário requer um número mínimo de membros de dados voting (ou seja, quórum para a confirmação), incluindo ele próprio, que deve concluir a construção antes de marcar o índice como pronto para uso. Consulte Construções de Índice em Ambientes Replicados para obter mais informações.
A seguinte operação inicia uma construção de índice de dois índices:
db.getSiblingDB("examples").invoices.createIndexes( [ { "invoices" : 1 }, { "fulfillmentStatus" : 1 } ] )
Por padrão, as compilações de índice usam o quórum para a confirmação "votingMembers" ou todos os membros do conjunto de réplicas votantes portadores de dados. A operação a seguir modifica o quórum para a confirmação de criação de índice para "majority" ou para uma maioria simples dos nós votantes portadores de dados:.
db.getSiblingDB("examples").runCommand( { "setIndexCommitQuorum" : "invoices", "indexNames" : ["invoices_1", "fullfillmentStatus_1"], "commitQuorum" : "majority" } )
Os índices especificados para
indexNamesdevem ser o conjunto inteiro de construções em andamento associadas a um determinado construtor de índice, ou seja, a operaçãocreateIndexes().O campo
indexNamesespecifica os nomes dos índices. Como os índices foram criados sem um nome explícito, o MongoDB gerou um nome de índice concatenando os nomes dos campos indexados e a ordem de classificação.