第 5 章 修复的问题


这个 Eclipse Vert.x 版本包含了来自社区版本 4.3.7 的所有程序错误修复。在社区版本中解决的问题在 Eclipse Vert.x 4.3.7 Wiki 页面中列出。

5.1. 修复了 4.3 发行版本中的问题

这部分论述了在 Eclipse Vert.x 4.3 中修复的问题。

在 Eclipse Vert.x 4.3.4 或更早版本中,Google 远程过程调用(gRPC)客户端和服务器间的通信会阻止线程,并导致 io.vertx.core.VertxException 错误。如果可用事件循环线程的数量不足,这会导致 Eclipse Vert.x gRPC Server (vertx-grpc-server)或 Eclipse Vert.x gRPC Client (vertx-grpc-client)改为 self-deadlock。

这个问题已在 Eclipse Vert.x 4.3.5 版本中解决。SSL 初始化的内部上下文现在使用 worker 上下文而不是 event-loop 上下文。

5.1.2. 按 ROWID搜索表数据时 JDBCClient 错误

在 Eclipse Vert.x 4.2 中,当尝试使用 ROWID 检索表数据时,vertx-jdbc-client 带有 Oracle JDBC 驱动程序 threw a java.sql.SQLException。出现这个问题的原因是,在 Eclipse Vert.x 4.2 中,ROWID 作为一个字节数组提供。在较早版本的 Eclipse Vert.x 中,ROWID 作为一个字符串类型提供。

这个问题已在 Eclipse Vert.x 4.3.1 发行版本中解决。Eclipse Vert.x 4.2 根据普通 Java 类型执行自定义类型。虽然此行为通常会生成正确的结果,但可能会错误地识别特殊数据库类型。由于自定义类型广播不是现代 JDBC 驱动程序的内置功能,所以 JDBC 客户端现在依赖于驱动程序执行特定于供应商的广播,这些广播更适合于旧的 Eclipse Vert.x heuristics。

5.1.3. 解析 ROWID时 JDBCPool 错误

在 Eclipse Vert.x 4.2 中,在尝试解析 ROWID 时,JDBC 池 threw 是一个 java.lang.UnsupportedOperationException。出现这个问题的原因是,在 Eclipse Vert.x 4.2 中,ROWID 无法直接解析为字节数组。在之前的 {VertX 版本中,ROWID 可以解析为字符串类型。

这个问题已在 Eclipse Vert.x 4.3.1 发行版中解决,它基于前面部分所述的解决方案。

在 Eclipse Vert.x 4.2 中,vertx-jdbc-client 带有 PostgreSQL JDBC 驱动程序 9.0 或更高版本,从而导致存储过程调用。出现这个问题的原因是,在 Eclipse Vert.x 4.2 中,vertx-jdbc-client 不支持现代 PostgreSQL 数据库驱动程序和服务器在执行可调用语句时需要的显式 SQL 类型信息。

这个问题已在 Eclipse Vert.x 4.3.1 发行版本中解决。现在,可从查询涉及的所有源中提取可调用的 ResultSet 元数据,以及组成响应一部分的独立结果集。完整信息允许 JDBC 客户端正确识别列中的数据类型并执行正确的广播。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部