新增功能
了解MongoDB Java Reactive Streams Driver以下版本中引入的新功能、改进和修复
5.2 新特性
重要
移除对MongoDB Server 3.6的支持
Java Reactive Streams driver v5.2 移除了对MongoDB Server 3.6的支持。有关兼容的服务器版本信息,请参阅兼容性.
5.2 驱动程序版本包含以下更改、修复和功能
添加了
SearchIndexType
类,您可以在构造SearchIndexModel
实例时传入。此更改允许您在创建 Atlas Search 或 Vector Search 索引时指定索引类型。有关更多信息,请参阅的 SearchIndexModel API 文档.将实现
SCRAM-SHA-1
和SCRAM-SHA-256
身份验证机制的算法实现委托给配置的 JCA 提供商。此更改意味着您的应用程序可以使用配置的符合 FIPS 的 JCA 提供商提供更高的安全性。修改 mongodb-crypt 的依赖版本,使其与 JVM 驱动的版本匹配。未来版本的
mongodb-crypt
将与驱动程序一起发布,并具有相同的版本号。当您升级到此次发布的驱动程序时,必须将您的mongodb-crypt
依赖项升级到 v5.2.0。有关更多信息,请参阅《在用加密》指南.由于在所有支持平台上实现了本地加密,性能得到提升。以下列表描述了根据您的操作系统需要采取的操作以实现此改进
Windows:将您的
mongodb-crypt
版本升级到 v5.2.0。Mac:将您的
mongodb-crypt
版本升级到 v5.2.0。Linux:在文件系统中直接安装
libmongocrypt.so
,而不是使用包含在mongodb-crypt
JAR 文件中的文件。您可以在 服务器手册 中找到安装libmongocrypt
的 Linux 指令。如果您使用包管理器安装libmongocrypt
,Java Native Access (JNA) 将无需进一步配置即可找到它。或者,您可以通过将LD_LIBRARY_PATH
环境变量设置为libmongocrypt
包的文件路径来指定搜索路径。我们建议直接安装,因为捆绑的共享库由于 OpenSSL 二进制不兼容的可能性而没有与 OpenSSL 链接。
共享库加载由 JNA 处理。您可以在 NativeLibrary 类文档 中查看库加载搜索路径顺序的规则。
修复了在特定情况下导致
InsertOneResult.getInsertedId()
和InsertManyResult.getInsertedIds()
方法返回不正确文档ID的问题。此更改已回滚到Java Reactive Streams驱动程序v5.1.4和v4.11.4。当分片集群操作失败时,如果其他
mongos
服务器可用,驱动程序将避免在选择操作重试时选择相同的mongos
服务器。添加了当您的应用程序使用GraalVM Native Image时所需的可达性元数据。此元数据取代了使用驱动程序库时收集可达性元数据的需要。有关更多信息,请参阅GraalVM文档中的可达性元数据。
此更改不会添加
libjnidispatch
和libmongocrypt
资源条目,因为为所有支持的平台(目标)添加条目将显著影响使用GraalVM Native Image构建的本机可执行文件的大小。请查看此示例resource-config.json文件在驱动程序GitHub存储库中,了解如何明确指定这些条目,如果您的应用程序依赖于org.mongodb:mongodb-crypt
库。通过扩展
VectorSearchOptions
API以引入以下特定选项子类型启用精确向量搜索ExactVectorSearchOptions
:使用此选项类型启用精确匹配,确保结果是最接近给定查询向量的向量。ApproximateVectorSearchOptions
:使用此选项类型启用可能不会返回确切最接近向量的搜索。在实例化此类型时,您可以传递一个numCandidates
参数来指定要考虑的最近邻的数量。
要了解有关使用 Atlas 向量搜索功能的更多信息,请参阅Atlas 向量搜索快速入门。
5.1.3 中的新功能
5.1.3 驱动程序补丁发布包含以下更改
修复了在使用
Cursor
类型时可能引起断言错误的问题。
5.1.2 中的新功能
5.1.2 驱动程序补丁发布包含以下更改
修复了防止驱动程序在将基类指定为
MongoCollection
实例的泛型类型时对具体类进行编码和解码的问题。
5.1.1版本更新内容
5.1.1版本驱动程序补丁发布包括以下变更
当使用
MONGODB-OIDC
身份验证机制时,请勿在authMechanismProperties
连接字符串值中包含逗号字符。
5.1版本更新内容
重要
MongoDB服务器v3.6已停用
本版本中已弃用对MongoDB服务器v3.6的支持,并将从驱动程序的v5.2版本中删除。
有关v5.1中引入的其他变更的信息,请参阅Java Sync Driver文档中的更新内容指南。