了解以下版本的MongoDB Java Reactive Streams 驱动程序中引入的新功能、改进和修复:
5.2 中的新增功能
重要
删除对MongoDB Server 3.6 的支持
Java Reactive Streams驾驶员v5.2 删除了对MongoDB Server3.6 的支持。要学习;了解有关服务器兼容版本的更多信息,请参阅兼容性。
5.2驱动程序发布包括以下更改、修复和功能:
允许设置客户端操作超时 (CSOT)。此功能允许您在
MongoClient实例上设立单个超时,该超时适用于使用该客户端执行的所有操作。要学习;了解更多信息,请参阅《 限制服务器执行时间》指南。重要
已弃用的超时选项
以下超时选项已弃用:
waitQueueTimeoutMSsocketTimeoutMSwTimeoutMSmaxTimeMSmaxCommitTimeMS
使用 CSOT功能来替换这些选项的功能。
添加
SearchIndexType类,您可以在构造SearchIndexModel实例时传递该类。此更改允许您在创建Atlas Search或 Vector Search索引时指定索引类型。要学习;了解更多信息,请参阅 SearchIndexModel API文档。将实施
SCRAM-SHA-1和SCRAM-SHA-256身份验证机制的算法委托给已配置的 JCA提供商来实现。 此更改意味着您的应用程序可以使用已配置的 FIPS 兼容 JCA提供商来提供更高级别的安全性。修改mongodb-crypt依赖项版本控制以匹配Java虚拟机(JVM)驱动程序的版本控制。未来版本的
mongodb-crypt将与驱动程序一起发布,并共享相同的版本号。您必须将mongodb-crypt依赖项升级到 v5。2。0在为此发布升级驱动程序时。要学习;了解更多信息,请参阅《正在使用的加密》指南。由于在所有支持的平台上实施了原生加密,因此性能得到提升。 以下列表描述了根据您的操作系统实现此改进所需的操作:
Windows :将
mongodb-crypt版本升级到 v 5.2.0 。Mac :将
mongodb-crypt版本升级到 v 5.2.0 。Linux :直接在文件系统上安装
libmongocrypt.so,而不是使用mongodb-cryptJAR文件中捆绑的文件。 您可以在服务器手册中找到安装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 原生映像时所需的可访问性元数据。此元数据取代了在使用驱动程序库时收集可达性元数据的需要。要学习;了解更多信息,请参阅 GraalVM 文档中的可达性元数据。
此更改不会添加
libjnidispatch和libmongocrypt资源条目,因为为所有支持的平台(目标)添加条目会显着影响使用 GraalVM 原生映像构建的原生可执行文件的大小。查看驱动程序GitHub存储库中的此示例 资源-配置.json 文件,了解在您的应用程序依赖于org.mongodb:mongodb-crypt库的情况下如何显式指定这些条目。通过扩展
VectorSearchOptionsAPI引入以下特定选项子类型,从而启用精确向量搜索:ExactVectorSearchOptions:使用此选项类型可启用精确匹配,确保结果是与给定查询向量最接近的向量。ApproximateVectorSearchOptions:使用此选项类型可以启用可能不会返回精确的最近向量的搜索。 实例化此类型时,您可以传递numCandidates参数,以指定要考虑的最近邻数量。
要学习;了解有关使用MongoDB Vector Search功能的更多信息,请参阅MongoDB Vector Search 快速入门。
5.1.3 中的新功能
5.1.3驱动程序补丁发布包括以下更改:
修复了使用
Cursor类型时可能导致断言错误的问题。
5.1.2 中的新功能
5.1.2驱动程序补丁发布包括以下更改:
修复了在您将扩展泛型基类的基类指定为
MongoCollection实例的泛型类型时,驱动程序无法对扩展泛型基类的具体类进行编码和解码的问题。
5.1.1 中的新功能
5.1.1驱动程序补丁发布包括以下更改:
使用
MONGODB-OIDC身份验证机制时,不得在authMechanismProperties连接string值中包含逗号字符。
5.1 中的新增功能
重要
MongoDB Server v 3.6 生命周期结束
此发布已弃用对MongoDB Server v3.6 的支持,并将在驱动程序v5.2发布中删除该支持。