Menu Docs

NOVIDADES

Saiba mais sobre os novos recursos, melhorias e correções introduzidas nas seguintes versões do driver Scala do MongoDB:

A versão do driver 5.3 inclui as seguintes alterações, correções e recursos:

  • Importante: a próxima versão menor eliminará o suporte para a versão do MongoDB Server 4.0 e aumentará a versão mínima suportada 4.2 para. Recomendamos fazer alterações em seu aplicação para acomodar alterações significativas. Consulte a seção Notas de versão no manual do servidor para saber mais sobre a atualização.

  • Adiciona a classe BinaryVector para implementar o Subtipo Binário BSON 9 para armazenamento e recuperação vetorial. Esta classe fornece armazenamento mais eficaz de valores em comparação com uma lista de instâncias do Double. Você pode criar os seguintes tipos de vetores com base no tipo de elementos que seu vetor contém:

    • Int8BinaryVector: vetor de números inteiros assinados de 8bits

    • Float32BinaryVector: vetor de números de ponto flutuante

    • PackedBitBinaryVector: vetor quantizado binário (em versão beta e sujeito a alterações antes de se tornar geralmente disponível)

    Para saber mais sobre este recurso, consulte Quantização vetorial na documentação do Atlas. Para saber mais sobre esse tipo, consulte a documentação da API BinaryVector.

  • Remove a imparcialidade explícita da implementação do pool de conexões . Esta alteração pode contribuir para um melhor rendimento quando você usa uma instância MongoClient em muitos threads de aplicação . No entanto, essa alteração pode causar um aumento na latência da cauda.

  • Adiciona uma opção de classificação aos métodos updateOne() e replaceOne(). Essa alteração também permite que você defina uma classificação como uma opção ao criar instâncias ReplaceOneModel e UpdateOneModel. Para saber mais, consulte os guias Atualizar documentos, Substituir documentos e Operações de gravação em massa.

Importante

Remoção de suporte para o MongoDB Server 3.6

Scala driver v5.2 remove o suporte para o MongoDB Server 3.6. Para saber mais sobre versões compatíveis do servidor, consulte Compatibilidade.

A versão do driver 5.2 inclui as seguintes alterações, correções e recursos:

  • Adiciona a classe SearchIndexType , que você pode passar ao construir uma instância do SearchIndexModel . Esta alteração permite a você especificar o tipo de índice ao criar um índice de Atlas Search ou Vector Search . Para saber mais, consulte o SearchIndexModel Documentação da API.

  • Delega a implementação dos algoritmos que implementam os mecanismos de autenticação SCRAM-SHA-1 e SCRAM-SHA-256 ao provedor JCA configurado. Essa alteração significa que seu aplicação pode usar um provedor JCA configurado compatível com FIPS para fornecer um nível mais alto de segurança.

  • Revisa o mongodb-crypt versão de dependência para corresponder à versão para os drivers JVM . Futuras versões do mongodb-crypt serão lançadas junto com o driver e compartilharão o mesmo número de versão. Você deve atualizar sua dependência mongodb-crypt para v5.2.0 ao atualizar seu driver para esta versão. Para saber mais, consulte o guia criptografia em execução em execução.

  • Melhorias de desempenho devido à implementação de criptografia nativa em todas as plataformas suportadas. A lista a seguir descreve as ações necessárias para implementar essa melhoria dependendo do seu sistema operacional:

    • Windows: atualize sua versão do mongodb-crypt para v5.2.0.

    • Mac: atualize sua versão do mongodb-crypt para v5.2.0.

    • Linux: instale libmongocrypt.so diretamente no sistema de arquivos, em vez de usar o arquivo fornecido com o arquivo JAR mongodb-crypt . Você pode encontrar instruções do Linux para instalar o libmongocrypt no manual do Servidor. Se você usar um gerenciador de pacote para instalar o libmongocrypt, o Java Native Access (JNA) o encontrará lá sem configurações adicionais. Como alternativa, você pode especificar o caminho da pesquisa definindo a variável de ambiente LD_LIBRARY_PATH para o caminho do arquivo do pacote libmongocrypt .

      Recomendamos a instalação direta porque a biblioteca compartilhada agrupada não está vinculada ao OpenSSL devido ao potencial de incompatibilidades binárias do OpenSSL.

      O carregamento da biblioteca compartilhada é tratado pelo JNA. Você pode visualizar as regras para a ordem do caminho da pesquisa de carregamento da biblioteca na documentação da classe NativeLibrary.

  • Corrige um problema que fazia com que os métodos InsertOneResult.getInsertedId() e InsertManyResult.getInsertedIds() retornassem IDs de documento incorretos em algumas situações. Essa alteração é portada para o driver Scala v5.1.4 e v4.11.4.

  • Quando uma operação de cluster fragmentado não obtém êxito, o driver evita selecionar o mesmo servidor mongos para tentativas de repetição de operação se outros servidores mongos estiverem disponíveis.

  • Adiciona metadados de acessibilidade necessários quando seu aplicação usa Imagem nativa do GraalVM. Esses metadados substituem a necessidade de coletar metadados de acessibilidade ao usar as bibliotecas de drivers. Para saber mais, consulte Metadados de Acessibilidade na documentação do GraalVM.

    Essa alteração não adiciona as entradas de recursos libjnidispatch e libmongocrypt , porque a adição de entradas para todas as plataformas suportadas (destinos) afeta significativamente o tamanho dos executáveis nativos criados usando a GraalVM Native Imagem. Veja esta amostra resource-config.json no repositório do driver Github para ver como especificar essas entradas explicitamente se seu aplicação depender da org.mongodb:mongodb-crypt biblioteca.

  • Ativa a pesquisa vetorial exata estendendo a API VectorSearchOptions para introduzir os seguintes subtipos de opção específicas:

    • ExactVectorSearchOptions: use esse tipo de opções para habilitar a correspondência precisa, garantindo que os resultados sejam os vetores mais próximos de um determinado vetor de consulta.

    • ApproximateVectorSearchOptions: utilize este tipo de opções para habilitar pesquisas que podem não retornar os vetores exatos mais próximos. Você pode passar um parâmetro numCandidates ao instanciar esse tipo para especificar o número de vizinhos mais próximos a serem considerados.

    Para saber mais sobre como usar a funcionalidade Atlas Vector Search , consulte o Início Rápido do Atlas Vector Search e selecione Scala no menu suspenso de idiomas.

O 5.1.3 a versão do patch do driver inclui as seguintes alterações:

  • Corrige um problema que pode causar erros de asserção ao usar Cursor tipos.

O 5.1.1 a versão do patch do driver inclui as seguintes alterações:

  • Ao usar o mecanismo de autenticação MONGODB-OIDC , você não deve incluir vírgulas no valor da string de conexão authMechanismProperties .

Importante

MongoDB Server v3.6 Fim da vida útil

O suporte para o MongoDB Server v3.6 está obsoleto nesta versão e será removido na versão v5.2 do driver.

Para saber mais sobre outras alterações introduzidas na v5.1, consulte o guia Novidades na documentação do Java Sync Driver.