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

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

文档版本对比

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.6.15 的版本变更

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

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

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

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

本次发布的全部变更

9.6.15

2019-08-08

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

9.6.15 历史版本维护截止 2021-11-11

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

要求使用函数式转换语法转换到临时类型时进行模式限定

7.59.6.15
CVE-2007-2138

要求使用函数式转换语法转换到临时类型时进行模式限定

—

PostgreSQL 9.6.15

升级与兼容性说明

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

不过,如果你是从 9.6.9 之前的版本升级,参见第 E.16 节。

安全相关要求使用函数式转换语法转换到临时类型时进行模式限定

变更

要求使用函数式转换语法转换到临时类型时进行模式限定(Noah Misch)

我们长期以来一直要求临时函数的调用显式指定临时模式,即 pg_temp.func_name(args)。现在把这一要求同样应用于使用函数表示法转换到临时类型,例如 pg_temp.type_name(arg)。否则有可能截获使用临时对象的函数调用,从而以与我们在 CVE-2007-2138 中封堵的方式大致相同的途径实现权限提升。(CVE-2019-10208)

关联记录(4)

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

BUG 修复修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败

变更

修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败(Tom Lane)

这修复了最近几个小版本中引入的回归:使用被更改列的索引未被正确处理,导致 ALTER TABLE 期间的奇怪失败。

关联记录(4)

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

其他改进当涉及的表是继承父表时,不要优化掉 GROUP BY 列

变更

当涉及的表是继承父表时,不要优化掉 GROUP BY 列(David Rowley)

通常,如果表的主键列包含在 GROUP BY 中,去掉其他分组列是安全的,因为主键列足以使分组唯一。但如果查询还读取继承子表,这条规则就不成立;父表的唯一性不会延伸到子表。

关联记录(2)

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

其他改进避免对某些带 GROUPING SETS 的查询使用不必要的排序步骤

变更

避免对某些带 GROUPING SETS 的查询使用不必要的排序步骤(Andrew Gierth、Richard Guo)

关联记录(3)

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

BUG 修复修复重建外键约束时多列外键的处理不当

变更

修复重建外键约束时多列外键的处理不当(Tom Lane)

如果键的所有列不都是同一类型,ALTER TABLE 可能对是否需要重新验证外键做出错误决定。看来该错误的方向总是保守的,即不必要地重新验证。

关联记录(4)

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

BUG 修复避免升级元组锁时的虚假死锁错误

变更

避免升级元组锁时的虚假死锁错误(Oleksii Kliukin)

当两个或更多事务在等待事务 T1 释放元组级锁,而 T1 把它的锁升级到更高级别时,T1 结束后可能在等待的事务之间报告虚假死锁。

关联记录(2)

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

BUG 修复修复未能解决涉及多个并行工作者进程的死锁的问题

变更

修复未能解决涉及多个并行工作者进程的死锁的问题(Rui Hai Jiang)

尚不清楚此 bug 是否可被非人工查询触达,但如果确实发生,本可解决的死锁中涉及的查询会阻塞直到被取消。

关联记录(2)

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

其他改进防止对以 infinity 为端点的日期范围的错误规范化

变更

防止对以 infinity 为端点的日期范围的错误规范化(Laurenz Albe)

如果端点是无穷,试图通过递增或递减端点值把开区间转换为闭区间或反之都是不正确的;因此在这种情况下保持范围不变。

关联记录(4)

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

BUG 修复修复把非常大的 money 值转换为 numeric 时小数位数的丢失

变更

修复把非常大的 money 值转换为 numeric 时小数位数的丢失(Tom Lane)

关联记录(4)

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

BUG 修复修复 MIPS CPU 的自旋锁汇编代码,使其在 MIPS r6 上工作

变更

修复 MIPS CPU 的自旋锁汇编代码,使其在 MIPS r6 上工作(YunQiang Su)

关联记录(4)

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

其他改进让 libpq 忽略连接服务文件中的回车(\r)

变更

让 libpq 忽略连接服务文件中的回车(\r)(Tom Lane、Michael Paquier)

在某些边界情况下,包含 Windows 风格换行的服务文件可能被错误解析,导致连接失败。

关联记录(4)

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

其他改进在 psql 中,避免在 SET variable = 之后提供错误的 Tab 补全选项

变更

在 psql 中,避免在 SET variable = 之后提供错误的 Tab 补全选项(Tom Lane)

关联记录(2)

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

BUG 修复修复 pg_dump 确保自定义操作符类以正确的顺序转储

变更

修复 pg_dump 确保自定义操作符类以正确的顺序转储(Tom Lane)

如果用户定义的操作符类是某个用户定义范围类型的子类型操作符类,相关对象会以错误的顺序转储,产生无法恢复的转储。(操作符类依赖处理的这一底层失败也可能在其他情况下显现,但这是唯一已知的情况。)

关联记录(4)

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

BUG 修复修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题

变更

修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题(Michael Paquier)

关联记录(4)

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

BUG 修复修复 contrib/sepgsql 测试在最近的 SELinux 版本下工作的问题

变更

修复 contrib/sepgsql 测试在最近的 SELinux 版本下工作的问题(Mike Palmiotto)

关联记录(4)

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

其他改进改进 src/test/recovery 回归测试的稳定性

变更

改进 src/test/recovery 回归测试的稳定性(Michael Paquier)

关联记录(2)

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

其他改进减少 pg_upgrade 测试脚本的 stderr 输出

变更

减少 pg_upgrade 测试脚本的 stderr 输出(Tom Lane)

关联记录(4)

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

BUG 修复修复 TAP 测试在 msys Perl 下、构建目录位于非根 msys 挂载点时的工作问题

变更

修复 TAP 测试在 msys Perl 下、构建目录位于非根 msys 挂载点时的工作问题(Noah Misch)

关联记录(2)

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

其他改进支持用 Microsoft Visual Studio 2019 构建 Postgres

变更

支持用 Microsoft Visual Studio 2019 构建 Postgres(Haribabu Kommi)

关联记录(5)

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

其他改进在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)

变更

在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)(Peifeng Qiu)

这修复了某些配置下的构建失败。

关联记录(4)

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

其他改进在 Visual Studio 构建中支持 OpenSSL 1.1.0 及更新版本

变更

在 Visual Studio 构建中支持 OpenSSL 1.1.0 及更新版本(Juan José Santamaría Flecha、Michael Paquier)

关联记录(4)

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

其他改进允许在顶层调用非 GNU make 时把 make 选项传递给 gmake

变更

允许在顶层调用非 GNU make 时把 make 选项传递给 gmake(Thomas Munro)

关联记录(3)

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

其他改进避免 initdb 期间选择 localtime 或 posixrules 作为 TimeZone

变更

避免 initdb 期间选择 localtime 或 posixrules 作为 TimeZone(Tom Lane)

某些情况下 initdb 会选择这些人工时区名之一而不是“真实”时区名。让任何其他与 C 库时区行为相匹配的时区都优先于这两个。

关联记录(4)

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

其他改进调整 pg_timezone_names 视图,使其仅当 Factory 时区有短缩写时才显示它

变更

调整 pg_timezone_names 视图,使其仅当 Factory 时区有短缩写时才显示它(Tom Lane)

历史上,IANA 为这个人工时区设置的“缩写”形如 Local time zone must be set--see zic manual page。现代版本的 tzdb 数据库显示 -00,但某些平台修改了数据以显示历史措辞之一或另一个。仅当该时区使用现代缩写时才显示它。

关联记录(4)

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

其他改进把我们的时区库副本与 IANA tzcode 版本 2019b 同步

变更

把我们的时区库副本与 IANA tzcode 版本 2019b 同步(Tom Lane)

这增加了对 zic 新的 -b slim 选项的支持,以缩小安装的时区文件。我们目前没有使用它,但将来可能启用。

关联记录(4)

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

其他改进更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。

变更

更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。

关联记录(4)

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

这份对比如何生成?

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

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

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

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

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