PostgreSQL 2010-12-16 错误修复更新
发布于 2010-12-16
PostgreSQL 全球开发组今日发布了 PostgreSQL 对象-关系数据库系统所有活跃分支的更新,包括版本 9.0.2、8.4.6、8.3.13、8.2.19、8.1.23。强烈建议数据库管理员在下次可用停机时间进行更新,尤其是在使用 9.0 版本、时间点恢复 (Point-In-Time Recovery) 或热备 (Warm Standby) 的情况下。
本次发布是 PostgreSQL 8.1 的最后一次更新。8.1 版本现已停止支持,我们鼓励用户尽快升级到较新版本。请参阅我们的 发布支持策略。
本次发布包含大量的文档更新和 174 个错误修复,其中包括:
- 避免在事务外报告即将发生的事务回卷 (transaction wraparound) 情况时发生失败。此疏漏阻止了在事务回卷过于接近时进行恢复,因为数据库启动处理会失败,此修复已回溯到所有版本。
- 修复从基础备份恢复时,当起始检查点 WAL 记录与重做点不在同一 WAL 段中时的问题,此修复已回溯到所有支持的版本。
- 强制 Linux 上的默认 wal_sync_method 为 fdatasync,此修复已回溯到所有支持的版本。
- 修复 ANALYZE 和复杂索引表达式中的内存泄漏,此修复已回溯到所有支持的版本。
- 修复 contrib/xml2 函数中的内存泄漏,此修复已回溯到所有支持的版本。
- 修复 pgcrypto 在尝试访问未定义的公钥时发生的段错误,此修复已回溯到所有支持的版本。
- 防止内联具有多个 OUT 参数的 SQL 函数,此修复已回溯到所有支持的版本。
- 修复 GIN 索引的 WAL 重放逻辑中的错误,此修复已回溯到 8.2。
- 修复服务器使用 GSSAPI 支持编译时,accept() 或在接受连接后立即调用的函数失败时发生的段错误,此修复已回溯到 8.3。
- 修复当 log_temp_files 激活时,临时文件删除中的错误处理,此修复已回溯到 8.3。
- 防止自动清理 (autovacuum) 工作进程因在工作进程生命周期内成本参数的泄漏而变慢,此修复已回溯到 8.3。
- 在返回“可以继续”之前检查子进程是否过多,此修复已回溯到 8.4。
- 提高窗口函数内部元组存储 (tuplestore) 结构的性能,此修复已回溯到 8.4。
9.0.2 更新还包含对 9.0 版本中引入或更改的功能的一些问题的修复。
- 修复针对 RADIUS 登录的低风险潜在拒绝服务攻击。
- 将 OFF 关键字设为非保留字。
- 修复流复制中最新移除的 WAL 段跟踪中的错误。
- 修复 pg_upgrade 中的缓冲区溢出。
- 修复自动清理启动器中的内存泄漏。
- 修复热备中事务 ID 分配和锁获取的竞态条件。
- 提高具有大量 blob 的并行恢复的性能。
总的来说,这些版本包含 9.0 的 79 个补丁,8.4 的 38 个补丁,8.3 的 31 个补丁,8.2 的 25 个补丁,8.1 的 21 个补丁。
有关详细的更改列表,请参阅每个版本的 发布说明。
与其他小版本一样,用户无需转储和重新加载数据库即可应用此更新版本;您只需关闭 PostgreSQL 并更新其二进制文件。跳过一个以上更新的用户可能需要查看发布说明以了解额外的、更新后的步骤。
立即下载新版本
本文已从先前版本的 PostgreSQL 网站迁移。对于迁移过程中可能出现的任何格式问题,我们深表歉意。