Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Driver GO

NOVIDADES

Dica

Notas de versão

Para saber mais sobre alterações e atualizações entre versões, você pode ler as notas de versão publicadas com o código-fonte do driver.

Descubra as novidades de cada versão:

O 1.15 A versão do driver Go inclui as seguintes melhorias e correções:

  • A rotatividade de conexão pode ser atenuada definindo um tempo limite para todo o cliente, especificando a opção de conexão timeoutMS ou chamando a função SetTimeout(). Quando o tempo limite é definido, o driver tenta reutilizar uma conexão após o tempo limite de uma operação e espera até um segundo para verificar se a conexão pode ser reutilizada antes de fechá-la.

  • Os eventos do pool de conexões incluem um campo Duration para medir a duração do checkout e o tempo total necessário para estabelecer uma conexão.

O 1.14 A versão do driver Go inclui as seguintes melhorias e correções:

  • As versões do Go anteriores à 1.18 não são mais suportadas.

  • No caso de um tempo limite tipo heartbeat, as operações em andamento são canceladas preventivamente.

  • As cadeias de conexão que incluem o prefixo "mongodb+srv://" podem conter letras maiúsculas no nome do host SRV.

O 1.13 A versão do driver Go inclui as seguintes melhorias e correções:

  • Registro para seleção de servidor e SDAM. Para saber mais sobre registro, consulte a documentaçãode Registro .

  • Métodos do tipo Collection que permitem gerenciar índices de pesquisa de forma programática.

  • Os eventos event.CommandStartedEvent e event.CommandFinishedEvent retornam o campo DatabaseName. Esse campo também está incluído nos análogos do log de comandos.

  • Em uma topologia fragmentada, ao selecionar um servidor para tentar novamente uma query malsucedida, o driver exclui o servidor usado para a tentativa inicial. Em vez disso, se houver mais de uma instância de mongos qualificada, o driver selecionará aleatoriamente uma. As instâncias não saudáveis são automaticamente excluídas da seleção.

  • O streaming do SDAM é desabilitado por padrão no AWS Lambda e plataformas semelhantes de função como serviço (FaaS). Você pode habilitar o monitoramento usando a opção serverMonitoringMode de URI .

O 1.12 A versão do driver Go inclui as seguintes melhorias e correções:

  • O driver libera conexões ao encerrar uma sessão. Isso evita vazamento de conexões quando um usuário executa uma transação enquanto está conectado a um balanceador de carga.

  • O driver não lança um erro de tempo de execução quando você desordena um tipo de bson.RawValue vazio com um tipo inválido ou desordena um ponteiro nil de uma instância ReadConcern.

  • Definir options.LogComponentAll como o componente de log corretamente resulta na publicação de logs em todos os componentes.

Importante

Aviso de depreciação

  • Os métodos mongo.NewClient() e client.Connect() estão obsoletos. Você pode criar um cliente e conectá-lo em uma chamada usando o método mongo.Connect() .

Novos recursos do 1.12 A versão do driver Go inclui:

Esta versão do driver adiciona compatibilidade para Queryable Encryption (QE). Para saber mais sobre os requisitos para usar o recurso QE, consulte a Tabela de compatibilidade do driver de Queryable Encryption.

O método ClientEncryption.CreateEncryptedCollection() cria automaticamente chaves de criptografia de dados quando você cria uma nova coleção criptografada. Para saber como usar o recurso QE, consulte o Início Rápido da Queryable Encryption no manual do Servidor.

Agora você pode registrar eventos de gerenciamento de conexão e execução de comando usando a interface de log de LogSink.

Para saber mais, consulte o guia básico de Logging.

Esta versão do driver adiciona recursos ao pacote options para especificar como o driver ordena e desordena o BSON.

O exemplo a seguir mostra como definir as opções BSON em seu Client. As opções especificam os seguintes comportamentos:

  • O driver volta para as marcações de estrutura json se as marcações de estrutura bson estiverem ausentes.

  • O driver desordena tipos de mapa Go nil como documentos BSON vazios.

  • O driver ordena os tipos de fatia nil Go como arrays BSON vazias.

bsonOpts := &options.BSONOptions{
UseJSONStructTags: true,
NilMapAsEmpty: true,
NilSliceAsEmpty: true,
}
options.Client().SetBSONOptions(bsonOpts)

Para ver um exemplo completo de como especificar e implementar o tipo BSONOptions, consulte a documentação da API.

Esta versão do driver simplifica a API WriteConcern . Para saber mais sobre as mudanças, consulte Preocupação de gravação.

  • Suporte para autenticação com funções AWS IAM no EKS.

  • Adição do método Cursor.SetBatchSize() para permitir a especificação do tamanho dos lotes buscados ao iterar por meio de um cursor.

  • Adição do método UnmarshalValue() para permitir a desordenação dos valores de BSON ordenados com o método MarshalValue().

Voltar

Referência rápida

Nesta página