Menu Docs
Página inicial do Docs
/
Manual do banco de dados
/

Notas de versão para MongoDB 8.2

Esta página descreve as alterações e as novas funcionalidades introduzidas no MongoDB 8.2.

O MongoDB 8.2 é uma versão menor, o que significa que ele recebe suporte tanto para o MongoDB Atlas quanto para sistemas on-premises. O MongoDB 8.2 introduz melhorias incrementais dentro de um ciclo de lançamento de versão principal. O MongoDB 8.2 também inclui alterações introduzidas no MongoDB 8.1. Esta página descreve as alterações introduzidas na versão menor e no MongoDB 8.2.

Para saber mais sobre as diferenças entre as versões principais e secundárias, consulte Versões do MongoDB.

Importante

MongoDB 8.2 é a versão menor mais recente. A partir do MongoDB 8.2, versões secundárias estão disponíveis para sistemas locais (MongoDB Community e Enterprise) para casos de uso específicos. Para obter mais informações, consulte a seção Versões do MongoDB.

Para instalar a versão mais recente do MongoDB compatível com uso local, consulte as instruções de instalação.

Importante

mongosync não é suportado no MongoDB 8.2.

Problemas corrigidos:

  • SERVIDOR-:94681 mover a amostragem para a thread do mantenedor do cap do oplog

  • SERVER-:106469 iniciar mongocryptd falha na compilação mais recente, janelas.

  • SERVIDOR-:109626 ajustar o comportamento para emitir campos adicionais em change streams

  • SERVER-:110250 use a sessão existente ao descartar o derramamento WT ident

  • WT-:15225 Corrige a tabela recém-criada e o problema do drop() EBUSY

  • Todos os problemas do JIRA foram encerrados em 8.2.1

  • 8.2.1 Registro de alterações

O MongoDB 8.2 adiciona o parâmetro terminateSecondaryReadsOnOrphanCleanup, que controla se as operações de leitura de longa duração em nós secundários terminam automaticamente antes da exclusão do documento órfão após uma migração de chunk.

Por padrão, este parâmetro é definido como true. Se uma operação de leitura em um nó secundário começar antes das confirmações de migração de chunk, o MongoDB encerrará automaticamente a operação antes de excluir os documentos órfãos. Nas versões do MongoDB anteriores a 8.2, essas operações continuam sendo executadas após a exclusão de documento órfão e podem perder documentos silenciosamente sem retornar um erro.

Para suportar este novo comportamento, o valor padrão para orphanCleanupDelaySecs é agora 3600 (anteriormente 900).

A partir do MongoDB 8.2, as compilações de índice durante a sincronização inicial usam 10% da RAM disponível por padrão. Você pode especificar uma porcentagem diferente de memória para o MongoDB usar com o parâmetro initialSyncIndexBuildMemoryPercentage.

Por padrão, a quantidade de memória disponível deve estar entre 200 MB e 16 GB, inclusive. Use os seguintes parâmetros para especificar diferentes limites mínimos e máximos para uso de memória:

A partir do MongoDB 8.2, o resultado$queryStats inclui as seguintes métricas em ticketsinadimplentes:

  • metrics.delinquentAcquisitions

  • metrics.totalAcquisitionDelinquencyMillis

  • metrics.maxAcquisitionDelinquencyMillis

O MongoDB considera um tíquete de execução inadimplente quando a aquisição leva muito tempo.

A partir do MongoDB 8.2, você pode configurar o tamanho do cache interno do WiredTiger usando uma nova opção baseada em porcentagem. Além das configurações existentes baseadas em gigabytes --wiredTigerCacheSizeGB e storage.wiredTiger.engineConfig.cacheSizeGB, agora você pode especificar o tamanho do cache como uma porcentagem da memória disponível com as opções --wiredTigerCacheSizePct e storage.wiredTiger.engineConfig.cacheSizePct.

A partir do MonogDB 8.2, um novo tipo de inconsistência RangeDeletionMissingShardKeyIndex é implementado. O tipo de inconsistência indica que existe uma coleção fragmentada que não tem um índice compatível com a chave de shard da coleção e que há pelo menos uma tarefa de exclusão de intervalo restante para concluir.

A partir do MongoDB 8.2, você pode usar $currentDate com aggregate() para retornar a hora atual no servidor.

O estágio de agregação $currentOp agora inclui o campo versionContext, que fornece informações sobre a feature compatibility version (FCV) da operação.

serverStatus inclui os seguintes novos campos em sua saída:

A partir do MongoDB 8.2, os Resultados Explicativos dos estágios que são transferidos para o disco agora incluem métricas padronizadas em nomes de campo consistentes. Esta atualização fornece uma maneira mais unificada de acompanhar o uso do disco para operações de uso intensivo de memória.

Os novos campos incluem:

A partir do MongoDB 8.2, o comando validate e o método assistente db.collection.validate() retornam um novo campo repairMode que indica quais tipos de inconsistências de dados o comando validate tentou reparar, se detectado.

A partir do MongoDB 8.2, A configuração storage.wiredTiger.engineConfig.zstdCompressionLevel suporta valores negativos para compressão zstd rápida. Valores negativos fornecem velocidades de compressão e descompressão mais rápidas ao custo da taxa de compressão. O novo intervalo suportado é -7 a 22.

A partir do MongoDB 8.2, você pode espelhar seletivamente as operações de leitura para servidores específicos que precisam de seus caches aquecimentos marcando os nós para espelhamento de leitura. Ao contrário das leituras espelhadas gerais, o espelhamento de leitura direcionada permite direcionar nós ocultos e espelhar a partir de nós primários e secundários.

Você pode configurar leituras espelhadas direcionadas utilizando o campo targetedMirroring no parâmetro mirrorReads.

A partir do MongoDB 8.2, você pode ativar a limitação de taxa para conexões de entrada para preservar os recursos da CPU durante a sobrecarga. Quando ativado, você pode ver quando a taxa de conexões de entrada excede a taxa de estabelecimento de conexão especificada e configurar os parâmetros para especificar como o sistema do MongoDB lida com o excesso de conexões.

Você pode configurar a limitação de taxa usando os seguintes novos campos:

Aviso

As queries de prefixo, sufixo e substring estão em visualização pública

As queries de prefixo, sufixo e substring do Queryable Encryption estão disponíveis em visualização pública no MongoDB 8.2. Não habilite esses tipos de query em produção. A funcionalidade de visualização pública será incompatível com o recurso GA, e você terá que descartar todas as collections que habilitarem essas queries.

O MongoDB 8.2 permite ativar queries de prefixo, sufixo e substring em campos de string criptografados em collections habilitadas para Queryable Encryption . Para obter detalhes, consulte habilitar queries de substring e Expressões de agregação suportadas.

Esta seção descreve problemas conhecidos no MongoDB 8.2 e seu status de resolução.

Na versão
Emitir
Status

8.2.0

SERVIDOR-106469: os processos mongocryptd, mongod e mongos não iniciam no Windows quando iniciados com o argumento --logpath NUL. Uma dependência de terceiros não permite erroneamente o uso de NUL, resultando nesse caminho de arquivo de log impedindo que mongocryptd seja iniciado. Os drivers do MongoDB podem falhar ao iniciar mongocryptd com sucesso no Windows se --logpath NUL for especificado. O driver MongoDB .NET/C# usa --logpath NUL em sua configuração padrão e não conseguirá iniciar no Windows.

You can avoid the .NET/C# Driver mongocryptd issue in the following ways:

Estamos direcionando uma correção para esse problema no MongoDB 8.2.1.

8.2.0

SERVIDOR-109626: v8.2.0 introduz algumas regressões de desempenho de fluxo de mudança. Os aplicativos que dependem de change streams para o processamento de dados em tempo real podem sofrer uma degradação de desempenho de até 15% em comparação com a versão8.0.

Estamos direcionando uma correção para esse problema no MongoDB 8.2.1.

8.2.0

SERVER-110250: os usuários que executam operações de memória intensiva que exigem transferência de disco podem sofrer falhas no servidor se o número de consultas com transferência ativa exceder 1000. Para mitigar esse problema, aumente o valor spillWiredTigerSessionMax setParameter para um valor mais alto.

Estamos direcionando uma correção para esse problema no MongoDB 8.2.1.

A seção a seguir descreve as alterações e as novas funcionalidades introduzidas no MongoDB 8.1.

A partir do MongoDB 8.1 (e 8.0.4), você pode usar setQuerySettings para adicionar comentários às configurações da query. Por exemplo, adicione um comentário que indique por que você adicionou configurações de query.

A partir do MongoDB 8.1, os seguintes acumuladores de agregação estão disponíveis:

A partir do MongoDB 8.1, os seguintes estágios de agregação estão disponíveis:

A partir do MongoDB 8.1, se um aplicação cliente se conectar a uma instância mongod ou mongos por meio de um balanceador de carga, os endereços IP e portas do computador cliente de origem e do balanceador de carga serão incluídos no registro de auditar . Você pode usar o registro para combinar um evento de auditar com o computador cliente de origem.

Para obter detalhes, consulte Mensagens de auditoria do esquema OCSF e Mensagens de auditoria do esquema mongo.

A partir do MongoDB 8.1, você pode acessar o UUID do cliente conectado atualmente por meio de connectionStatus.authInfo.UUID.

A partir do MongoDB 8.1 (e 8.0.5), se o espaço em disco estiver baixo, o MongoDB falhará nas queries que estiverem sendo despejadas no disco.

A partir do MongoDB 8.1, algumas queries$geoNear que anteriormente falhavam com índices 2d ou 2dsphere ocultos agora serão bem-sucedidas. Em versões anteriores, algumas queries $geoNear costumavam falhar desnecessariamente com um erro IndexNotFound quando incluíam um índice oculto devido à confusão sobre qual índice usar.

A partir do MongoDB 8.1, a métrica durationMillis relatada em registros de queries lentas contabiliza o tempo gasto no processamento de autorização e na análise do comando. Como resultado, durationMillis reflete mais de perto a duração total do comando.

A partir do MongoDB 8.1, os seguintes tipos de inconsistência estão disponíveis:

A partir do MongoDB 8.1, você pode fazer referência a várias coleções criptografadas em um estágio $lookup.

Para saber mais, consulte:

A partir do MongoDB 8.1, se o $merge índice de suporte do estágio de agregação não for esparso, os campos especificados para a opção on poderão estar ausentes ou conter um valor nulo.

A partir do MongoDB 8.1, as estatísticas de query são coletadas e relatadas para comandos count e distinct. Para obter detalhes, consulte contagem de Forma de query de comando e Forma de query de comando distinta.

A partir do MongoDB 8.1, os seguintes parâmetros do servidor estão disponíveis:

A partir do MongoDB 8.1 (e 8.0.4 7.0.14e), a seção indexStats serverStatus da saída de comando acompanha os índices prepareUnique no estado.

O MongoDB 8.1 adiciona as seguintes métricas de status do servidor :

A partir do MongoDB 8.1, as mensagens de registro para queries lentas conterão novas métricas se a execução da query gravar arquivos temporários no disco. Essas métricas são prefixadas pelo estágio de execução da query que fez com que a query excedesse o limite de memória. Por exemplo, sortSpills indica o número de vezes que o estágio de classificação da execução da query gravou arquivos temporários no disco.

Métrica
Descrição

<executionPart>Spills

Número de vezes que o estágio de execução da query correspondente gravou arquivos temporários no disco

<executionPart>SpilledBytes

Tamanho, em bytes, da memória liberada ao escrever arquivos temporários no disco

<executionPart>SpilledDataStorageSize

Tamanho, em bytes, do espaço em disco usado para arquivos temporários

<executionPart>SpilledRecords

Número de registros gravados em arquivos temporários no disco

Para mais informações sobre escrever arquivos temporários no disco, consulte allowDiskUse().

A partir do MongoDB 8.1, o comando renameCollection e o método de shell correspondente, db.collection.renameCollection(), estão incluídos na API estável V1.

A partir do MongoDB 8.1, os resultados da explicação incluem estatísticas de execução para os estágios $search, $searchMeta e $vectorSearch.

Para saber mais, consulte:

A partir do MongoDB,8.1 você pode createSearchIndexes executar,, updateSearchIndex dropSearchIndexe para criar, modificar, eliminar e listar índices do $listSearchIndexes Atlas Search e índices do Atlas Vector Search em exibições padrão compatíveis que contêm apenas os seguintes estágios:

Você pode executar pipelines de agregação que contenham os estágios $search e $searchMeta em exibições que usam um índice de pesquisa. Você também pode executar agregação pipelines que contêm um estágio $vectorSearch em visualizações que contêm um índice de pesquisa vetorial.

Iniciando no MongoDB 8.1, o comando validate inclui especificações de índice no campo de saída validate.indexDetails.

A partir do MongoDB 8.1, você pode definir a opção validationAction do seu esquema como errorAndLog, na qual o MongoDB rejeita qualquer inserção ou atualização que viole os critérios de validação e registra o erro no arquivo de log mongod.

Para obter mais informações, consulte Escolher como lidar com documentos inválidos.

Importante

Versão de compatibilidade de recursos

Para atualizar para o MongoDB 8.2 a partir de uma implantação do 8.0 , a implantação do 8.0 deve ter featureCompatibilityVersion configurado como 8.0. Para verificar a versão:

db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )

Para atualizar para o MongoDB 8.2, consulte as instruções de atualização específicas para o MongoDB deployment:

Se você precisar de orientação para atualizar para 8.2, os serviços profissionais do MongoDB oferecem suporte para ajudar a garantir uma transição tranquila, sem interrupção para seu aplicação MongoDB . Para saber mais, acesse Consultoria do MongoDB.

Para baixar o MongoDB 8.2, acesse a Central de downloads do MongoDB.

O MongoDB suporta apenas downgrades de versão única. Você não pode fazer o downgrade para uma versão que esteja várias versões atrás da versão atual.

Por exemplo, você pode fazer downgrade de uma série 8.2para uma série 8.0. No entanto, não há suporte para desatualização adicional dessa implantação da série 8.0para uma implantação da série 7.0.

  • Downgrades binários não são permitidos para o MongoDB Community Edition.

  • Não é possível fazer downgrade do FCV de sua implantação para uma versão secundária do MongoDB.

  • Se você atualizar ou desatualizar o fCV do seu sistema, não poderá desatualizar sua versão binária do sistema Enterprise sem ajuda do suporte.

Voltar

Registro de alterações

Nesta página