↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

文档版本比较

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.3.9 发布变化

此版本的完整功能、修复与兼容性说明,以及其他版本的关联记录。

此版本的完整变化
此版本的完整变化

包括起始版本之后至目标版本的变化。大版本号表示该分支的首个版本。

完整发布变化

9.3.9

2015-06-12

导出 JSON ↓
4项变化功能、修复、改进
1个版本按版本分组
0CVE独立漏洞编号

9.3.9stable支持截止 2018-11-08

PostgreSQL 9.3.9

迁移与兼容性

对于运行 9.3.X 的用户,不需要进行转储/恢复。

但是,如果你要升级的安装此前曾使用 9.3.0 到 9.3.4(含)之间的pg_upgrade版本升级过,请参见下面的第一条变更日志条目。

不过,如果你是从早于 9.3.7 的版本升级,请参见第 E.19 节。

问题修复修复从不一致数据库状态恢复时可能失败的问题

变更

修复从不一致数据库状态恢复时可能失败的问题(Robert Haas)

最近的PostgreSQL发行版引入了防御多事务 ID 回卷的机制,但其中一些代码没有考虑到可能需要在崩溃恢复期间(数据库可能不处于一致状态时)运行。这可能导致崩溃后无法重启或无法启动辅助服务器。在曾使用 9.3.0 到 9.3.4 之间pg_upgrade版本的安装中,pg_upgrade一个已修复缺陷的残留影响也可能导致这种失败。

所涉及的pg_upgrade缺陷是:即使真实值应该更高,它也会把pg_control中的oldestMultiXid设为 1。有了本发行版引入的修复,这种情况将导致立即进行紧急自动清理,直到能够确定正确的oldestMultiXid值。如果这会造成困难,用户可以在升级到本发行版之前进行手工清理来避免。具体步骤如下:

  1. 检查pg_controldata报告的“Latest checkpoint's oldestMultiXid”是否为 1。如果不是,则无需任何操作。

  2. 查看PGDATA/pg_multixact/offsets中是否有名为0000的文件。如果有,则无需任何操作。

  3. 否则,对于 pg_class.relminmxid 等于 1 的每个表,在把vacuum_multixact_freeze_min_age和vacuum_multixact_freeze_table_age都设为零的情况下对该表执行 VACUUM。(可以使用第 18.4.4 节中描述的清理代价延迟参数,来降低对并发会话的性能影响。)执行这一步必须使用 PostgreSQL 9.3.5 或更高版本。

问题修复修复罕见的未能使关系缓存 init 文件失效的问题

变更

修复罕见的未能使关系缓存 init 文件失效的问题(Tom Lane)

在并发活动时序恰好不对的情况下,对系统目录执行VACUUM FULL可能无法更新用于避免新会话缓存加载工作的“init 文件”。这将导致后续会话完全无法访问该目录。这是一个非常古老的缺陷,但它极难触发,直到最近才出现可复现的案例。

关联记录 (4)
问题修复避免传入会话与CREATE/DROP DATABASE之间的死锁

变更

避免传入会话与CREATE/DROP DATABASE之间的死锁(Tom Lane)

在作为DROP DATABASE命令目标或CREATE DATABASE命令模板的数据库中启动的新会话,可能导致该命令等待五秒后失败,即使新会话本会在此之前退出。

关联记录 (4)
改进改进规划器对带内层索引扫描的半连接和反连接的代价估计

变更

改进规划器对带内层索引扫描的半连接和反连接的代价估计(Tom Lane、Tomas Vondra)

当所有连接子句都被用作索引扫描条件时,这种计划相当廉价,即使内层扫描名义上会取回很多行,因为执行器在取得一行后就会停止。规划器只部分考虑了这一效应,因此会高估代价,从而可能选择其他效率低得多的计划类型。

关联记录 (1)
如何生成比较结果?

比较依据起始版本之后至目标版本的 PostgreSQL 发布说明。经核实的回补重复项会谨慎合并,保留每条原始说明;相关提交可能涉及独立变化,仍作为不同记录保留。

发布快照: 2026-09-26 · 安全快照: 2026-09-26

内容来自 PostgreSQL 发布说明。交互方式参考 pgversions.com 与 pgversionreport.