↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档版本对比

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.2.9 的版本变更

本次发布的完整功能、修复与兼容性说明,以及它们在其他版本中的关联记录。

查看该版本全部变更
查看该版本全部变更

从起始版本之后,看到目标版本为止。大版本名称代表该系列首个正式版本。

收录 PostgreSQL 9.0 起的 17 个大版本、352 份发布说明;数据更新于 2026-09-26。

本次发布的全部变更

9.2.9

2014-07-24

导出 JSON
41项变更功能、修复与改进
1次版本发布按发行版本归档
1个 CVE本版说明中提及的漏洞编号

9.2.9 历史版本维护截止 2017-11-09

本版提及的安全记录 1 个 CVE
本版发布说明提及的 CVE,可能包含已有漏洞的后续修复
CVE / 问题严重程度修复版本
CVE-2014-0067

保护 make check 期间启动的临时 postmaster 的 Unix 域套接字

7.09.2.10

PostgreSQL 9.2.9

升级与兼容性说明

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

不过,本版本纠正了某些 GiST 索引的索引损坏问题。请参见下面第一条变更日志,以确认你的安装是否受影响以及应采取的步骤。

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

其他改进正确初始化 contrib/btree_gist 在 bit 列上索引的填充字节

变更

正确初始化 contrib/btree_gist 在 bit 列上索引的填充字节(Heikki Linnakangas)

这一错误可能导致本应比较相等的值不被视为相等,从而产生错误的查询结果。在 bit 或 bit varying 列上建有 GiST 索引的用户,在安装此更新后应对这些索引执行 REINDEX。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在删除 GIN 列表页时防止残缺页(torn page)

变更

在删除 GIN 列表页时防止残缺页(torn page)(Heikki Linnakangas)

此修复可防止在页面更新写入磁盘期间发生系统崩溃时可能出现的索引损坏。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在从 WAL 重放更新时不清除 GiST 索引页的右链接

变更

在从 WAL 重放更新时不清除 GiST 索引页的右链接(Heikki Linnakangas)

这一错误可能导致热备中执行的 GiST 索引扫描出现瞬时错误的结果。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复向 SP-GiST 文本索引插入时极端情况下的无限循环

变更

修复向 SP-GiST 文本索引插入时极端情况下的无限循环(Tom Lane)

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复hot_standby_feedback被动态关闭时反馈状态的处理

变更

修复hot_standby_feedback被动态关闭时反馈状态的处理(Simon Riggs)

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复嵌套调用 ReceiveSharedInvalidMessages 期间缓存失效可能不正确的问题

变更

修复嵌套调用 ReceiveSharedInvalidMessages 期间缓存失效可能不正确的问题(Andres Freund)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复规划器对嵌套 nestloop 计划中生成的嵌套 PlaceHolderVar 的错误处理

变更

修复规划器对嵌套 nestloop 计划中生成的嵌套 PlaceHolderVar 的错误处理(Tom Lane)

这一疏忽可能导致“variable not found in subplan target lists”错误,或静默的错误查询结果。

BUG 修复修复对从带继承子表的表读取的子查询执行 UNION ALL 时规划器报“could not find pathkey item to sort”失败的问题

变更

修复对从带继承子表的表读取的子查询执行 UNION ALL 时规划器报“could not find pathkey item to sort”失败的问题(Tom Lane)

关联记录(2)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进当子查询的目标列表中存在集合返回函数时,不再假定其输出是唯一的

变更

当子查询的目标列表中存在集合返回函数时,不再假定其输出是唯一的(David Rowley)

这一疏忽可能导致诸如 WHERE x IN (SELECT y, generate_series(1,10) FROM t GROUP BY y) 之类的构造被错误优化。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进改进规划器,使其在可能时丢弃 AND/OR 的常量 NULL 输入

变更

改进规划器,使其在可能时丢弃 AND/OR 的常量 NULL 输入(Tom Lane)

此变更修复了一些 9.2 及之后版本更激进的参数替换导致比旧版本生成的计划更差的情况。

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 to_json() 及相关函数对输入类型类别的识别

变更

修复 to_json() 及相关函数对输入类型类别的识别(Tom Lane)

已知这曾导致 JSON 结果中 money 字段加引号不当,其他数据类型也可能出现错误结果。

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复未能对结构化类型的组合元素中的字段执行解 TOAST 的错误

变更

修复未能对结构化类型的组合元素中的字段执行解 TOAST 的错误(Tom Lane)

这纠正了 TOAST 指针可能未经解引用就被复制到其他表的情况。如果原始数据随后被删除,当这个已悬空的指针被使用时,会导致诸如“missing chunk number 0 for toast value ...”之类的错误。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复对 Append 计划节点输出的整行引用导致“record type has not been registered”失败的问题

变更

修复对 Append 计划节点输出的整行引用导致“record type has not been registered”失败的问题(Tom Lane)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复在回卷游标时调用用户定义函数可能崩溃的问题

变更

修复在回卷游标时调用用户定义函数可能崩溃的问题(Tom Lane)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复为 FROM 中的函数求值参数时查询级内存泄漏的问题

变更

修复为 FROM 中的函数求值参数时查询级内存泄漏的问题(Tom Lane)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复正则表达式处理中的会话级内存泄漏

变更

修复正则表达式处理中的会话级内存泄漏(Tom Lane、Arthur O'Dwyer、Greg Stark)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 hungarian.stop 中的数据编码错误

变更

修复 hungarian.stop 中的数据编码错误(Tom Lane)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进防止在default_with_oids为真时创建带 OIDS 的外部表

变更

防止在default_with_oids为真时创建带 OIDS 的外部表(Etsuro Fujita)

关联记录(2)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复对在当前事务中插入、随后被一个现已回滚的子事务删除的行的活跃性检查

变更

修复对在当前事务中插入、随后被一个现已回滚的子事务删除的行的活跃性检查(Andres Freund)

如果同一事务中稍后执行了 CREATE INDEX 或 CLUSTER,这可能导致问题(至少是虚假警告,最坏是无限循环)。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 PREPARE TRANSACTION 期间清除 pg_stat_activity.xact_start

变更

在 PREPARE TRANSACTION 期间清除 pg_stat_activity.xact_start(Andres Freund)

在 PREPARE 之后,发起会话已不在事务中,因此不应继续显示事务开始时间。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 REASSIGN OWNED 对文本搜索对象失败的问题

变更

修复 REASSIGN OWNED 对文本搜索对象失败的问题(Álvaro Herrera)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 postmaster 启动期间阻塞信号

变更

在 postmaster 启动期间阻塞信号(Tom Lane)

这确保了 postmaster 在例如启动过程中收到 SIGINT 时能够正确清理自身。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复处理 pg_hba.conf 中指定主机名而非 IP 地址的条目时的客户端主机名查找

变更

修复处理 pg_hba.conf 中指定主机名而非 IP 地址的条目时的客户端主机名查找(Tom Lane)

确保反向 DNS 查找失败会被报告,而不是只是静默地不匹配这些条目。同时确保每个连接只做一次反向 DNS 查找尝试,而不是每个主机名条目一次——如果查找尝试失败,此前发生的就是后者。

关联记录(2)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进允许 root 用户使用 postgres -C variable 和 postgres --describe-config

变更

允许 root 用户使用 postgres -C variable 和 postgres --describe-config(MauMau)

对以 root 身份启动服务器的禁止并不需要延伸到这些操作,放宽它可以避免 pg_ctl 在某些场景下的失败。

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

安全相关保护 make check 期间启动的临时 postmaster 的 Unix 域套接字

变更

保护 make check 期间启动的临时 postmaster 的 Unix 域套接字(Noah Misch)

正如我们此前在 CVE-2014-0067 中指出的,任何能够访问套接字文件的本地用户都可以以服务器的引导超级用户身份连接,进而以运行测试的操作系统用户身份执行任意代码。此变更通过把服务器的套接字放到 /tmp 下一个临时的、模式为 0700 的子目录中来防御这一风险。但在不支持 Unix 套接字的平台(尤其是 Windows)上风险仍然存在,因为那时临时 postmaster 必须接受本地 TCP 连接。

此变更的一个有用副作用是简化了覆盖 DEFAULT_PGSOCKET_DIR 的构建中的 make check 测试。常用的非默认值(如 /var/run/postgresql)往往不允许构建用户写入,此前需要一些变通办法,现在不再需要了。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复表空间创建 WAL 重放在 Windows 上无法工作的问题

变更

修复表空间创建 WAL 重放在 Windows 上无法工作的问题(MauMau)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 Windows 上套接字创建失败的检测

变更

修复 Windows 上套接字创建失败的检测(Bruce Momjian)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 Windows 上,允许新会话从配置文件获取 PGC_BACKEND 参数(例如log_connections)的值

变更

在 Windows 上,允许新会话从配置文件获取 PGC_BACKEND 参数(例如log_connections)的值(Amit Kapila)

此前,如果启动后在文件中更改了这类参数,更改不会生效。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 Windows 上正确地为可执行文件路径名加引号

变更

在 Windows 上正确地为可执行文件路径名加引号(Nikhil Deshpande)

如果安装路径同时包含空格和 @ 符号,这一疏忽可能导致 initdb 和 pg_upgrade 在 Windows 上失败。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 macOS 上 libpython 的链接

变更

修复 macOS 上 libpython 的链接(Tom Lane)

我们先前使用的方法在 Xcode 5.0 及之后版本提供的 Python 库上可能失败。

关联记录(2)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

性能改进当服务器持续以快于客户端吸收速度的速率发送数据时,避免 libpq 中的缓冲区膨胀

变更

当服务器持续以快于客户端吸收速度的速率发送数据时,避免 libpq 中的缓冲区膨胀(Shin-ichi Morita、Tom Lane)

libpq 可能被迫不断增大其输入缓冲区,直到内存耗尽(这会被误导性地报告为“lost synchronization with server”)。在正常情况下,数据持续以快于 recv() 循环吸收速度的速率传输是相当牵强的,但在客户端因调度器约束被人为减速时曾观察到这种情况。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进确保 libpq 中的 LDAP 查找尝试按预期超时

变更

确保 libpq 中的 LDAP 查找尝试按预期超时(Laurenz Albe)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 ecpg 在 char * 数组作为返回多行的 FETCH 语句目标时的行为,以及其他一些数组处理修复

变更

修复 ecpg 在 char * 数组作为返回多行的 FETCH 语句目标时的行为,以及其他一些数组处理修复(Ashutosh Bapat)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 pg_restore 对旧式大对象注释的处理

变更

修复 pg_restore 对旧式大对象注释的处理(Tom Lane)

如果归档文件由 9.0 之前版本的 pg_dump 生成且包含较多大对象注释,直接恢复到数据库通常会失败。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复新服务器创建了 TOAST 表而旧版本没有创建时 pg_upgrade 的问题

变更

修复新服务器创建了 TOAST 表而旧版本没有创建时 pg_upgrade 的问题(Bruce Momjian)

这种罕见情况会表现为“relation OID mismatch”错误。

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进防止 contrib/auto_explain 改变用户 EXPLAIN 命令的输出

变更

防止 contrib/auto_explain 改变用户 EXPLAIN 命令的输出(Tom Lane)

如果 auto_explain 处于活动状态,它可能导致 EXPLAIN (ANALYZE, TIMING OFF) 命令仍然打印计时信息。

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

BUG 修复修复 contrib/dblink 中的查询级内存泄漏

变更

修复 contrib/dblink 中的查询级内存泄漏(MauMau、Joe Conway)

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 contrib/pgcrypto 函数中,确保返回前清除栈变量中的敏感信息

变更

在 contrib/pgcrypto 函数中,确保返回前清除栈变量中的敏感信息(Marko Kreen)

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进防止 contrib/pgstattuple 的 pgstat_heap() 使用已释放的内存

变更

防止 contrib/pgstattuple 的 pgstat_heap() 使用已释放的内存(Noah Misch)

关联记录(1)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进在 contrib/uuid-ossp 中,跨调用缓存 OSSP UUID 库的状态

变更

在 contrib/uuid-ossp 中,跨调用缓存 OSSP UUID 库的状态(Tom Lane)

这提高了 UUID 生成的效率,并在有 /dev/urandom 的平台上减少了从中抽取的熵量。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

其他改进把时区数据文件更新为 tzdata 版本 2014e for DST law changes in Crimea, Egypt, and Morocco。

变更

把时区数据文件更新为 tzdata 版本 2014e for DST law changes in Crimea, Egypt, and Morocco。

关联记录(3)

“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。

这份对比如何生成?

对比以 PostgreSQL 发行说明为依据,汇总起始版本之后、目标版本及之前的变更,支持同一大版本内的小版本更新,以及跨大版本升级。跨大版本时,旧分支的维护记录只纳入到下一大版本首次发布之日,所有记录均不晚于目标版本的发布日期。大版本名称(如 18)指首个正式版本(18.0);测试版与开发快照会单独标注。

条目正文来自本站中文手册,版本清单、条目覆盖与提交依据逐一核对上游英文原文。每条变更保留完整说明与原文链接;分类用于辅助浏览,具体影响、适用条件与升级操作请阅读条目正文和各版本的升级说明。

同一修复可能回补到多个版本分支。对比会保守合并可确认相同的条目,并保留各分支完整说明;已知由起始版本包含的修复会排除。一条说明包含多个独立修复时,只有全部已包含才排除。大版本新功能不因与旧版补丁存在提交关联而合并,不能确认相同的条目继续保留。这是发行说明的累计差异,不能覆盖二进制程序之间的每一处代码变化。

CVE 独立依据 PostgreSQL 官方安全公告与漏洞记录计算:起始版本受影响、目标版本已修复或不受影响的漏洞才计入,按编号去重。目标版本仍受影响的漏洞另行提示;安全变更条数与 CVE 数量分别统计。

交互参考 pgversions.com 与 pgversionreport,内容来自 PostgreSQL 发行说明。更多历史资料见发行说明归档。