2025年9月25日: PostgreSQL 18 发布!

安全更新 2011-02-01 发布

发布于 2011-01-31

PostgreSQL 全球开发组今天发布了 PostgreSQL 对象关系数据库系统的所有活动分支的安全更新,包括 9.0.3、8.4.7、8.3.14 和 8.2.20 版本。

此次更新包含一项安全修复,该修复防止了 contrib 模块 intarray 中 query_int 类型的输入函数发生缓冲区溢出。此错误是一个安全风险,因为该函数的返回地址可能会被恶意代码覆盖。

所有受支持的 PostgreSQL 版本都受到影响。但是,受影响的 contrib 模块是可选的。只有在其数据库中安装了 intarray 模块的用户才会受到影响。请参阅 CVE 公告。

此次发布包含 63 项错误修复,其中包括:

  • 避免规划器在处理遥远日期值时发生意外转换溢出;
  • 修复将值赋给数组切片,而该切片位于现有下标范围之前的情况;
  • 修复 pg_restore 在转义大型对象时执行正确操作;
  • 避免 EXPLAIN 尝试显示简单形式的 CASE 表达式时发生失败;
  • 改进了 Windows 版本的构建支持;
  • 修复了 contrib/seg 的 GiST picksplit 算法中的错误,该错误导致性能下降。

9.0.3 更新还包含对 9.0 版本中引入或更改的功能的一些修复。

  • 确保所有接收到的 WAL 在 walreceiver 退出前都已 fsync 到磁盘;
  • 通过避免过度的 fsync 活动来提高 walreceiver 的性能;
  • 当需要时,使 ALTER TABLE 重新验证唯一性和排除约束;
  • 修复 EvalPlanQual 在更新继承树时,当表不都相同时的情况。

总的来说,这些发布包含 9.0 的 33 个补丁、8.4 的 20 个补丁、8.3 的 20 个补丁和 8.2 的 18 个补丁。

请参阅每个版本的发行说明以获取完整的更改列表和详细信息。

与其他次要版本一样,用户无需转储和重新加载其数据库即可应用此更新版本;您只需关闭 PostgreSQL 并更新其二进制文件即可。跳过一个以上更新的用户可能需要查看发行说明以获取额外的

更新后步骤。

立即下载新版本

本文已从先前版本的 PostgreSQL 网站迁移。对于迁移过程中可能出现的任何格式问题,我们深表歉意。