文档版本比较
POSTGRESQL · VERSION COMPARE
PostgreSQL 9.4.24 发布变化
此版本的完整功能、修复与兼容性说明,以及其他版本的关联记录。
包括起始版本之后至目标版本的变化。大版本号表示该分支的首个版本。
从数据库输出识别起始版本
完整发布变化
9.4.24
2019-08-08
9.4.24stable支持截止 2020-02-13
安全变化
| CVE / 问题 | 严重程度 | 修复版本 | 所选版本状态 |
|---|---|---|---|
| CVE-2019-10208 要求使用函数式转换语法转换到临时类型时进行模式限定 | 9.4.24 | 已记录修复 | |
| CVE-2007-2138 要求使用函数式转换语法转换到临时类型时进行模式限定 | 已记录修复 |
PostgreSQL 9.4.24
迁移与兼容性
对于运行 9.4.X 的用户,不需要转储/恢复。
但是,如果你是从早于 9.4.18 的版本升级,请参见第 E.9 节。
安全要求使用函数式转换语法转换到临时类型时进行模式限定
变更
要求使用函数式转换语法转换到临时类型时进行模式限定(Noah Misch)
我们长期以来一直要求临时函数的调用显式指定临时模式,即 pg_temp.。现在把这一要求同样应用于使用函数表示法转换到临时类型,例如 func_name(args)pg_temp.。否则有可能截获使用临时对象的函数调用,从而以与我们在 CVE-2007-2138 中封堵的方式大致相同的途径实现权限提升。(CVE-2019-10208)type_name(arg)
问题修复修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败
变更
修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败(Tom Lane)
这修复了最近几个小版本中引入的回归:使用被更改列的索引未被正确处理,导致 ALTER TABLE 期间的奇怪失败。
关联记录 (4)
- 相同变化PostgreSQL 11.5 · 修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 发生的失败
- 相同变化PostgreSQL 10.10 · 修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 发生的失败
- 相同变化PostgreSQL 9.6.15 · 修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败
- 相同变化PostgreSQL 9.5.19 · 修复在一条命令中更改多列类型时 ALTER TABLE ... ALTER COLUMN TYPE 的失败
问题修复修复重建外键约束时多列外键的处理不当
变更
修复重建外键约束时多列外键的处理不当(Tom Lane)
如果键的所有列不都是同一类型,ALTER TABLE 可能对是否需要重新验证外键做出错误决定。看来该错误的方向总是保守的,即不必要地重新验证。
改进防止对以 infinity 为端点的日期范围的错误规范化
变更
防止对以 infinity 为端点的日期范围的错误规范化(Laurenz Albe)
如果端点是无穷,试图通过递增或递减端点值把开区间转换为闭区间或反之都是不正确的;因此在这种情况下保持范围不变。
问题修复修复把非常大的 money 值转换为 numeric 时小数位数的丢失
变更
修复把非常大的 money 值转换为 numeric 时小数位数的丢失(Tom Lane)
问题修复修复 MIPS CPU 的自旋锁汇编代码,使其在 MIPS r6 上工作
变更
修复 MIPS CPU 的自旋锁汇编代码,使其在 MIPS r6 上工作(YunQiang Su)
改进让 libpq 忽略连接服务文件中的回车(\r)
变更
让 libpq 忽略连接服务文件中的回车(\r)(Tom Lane、Michael Paquier)
在某些边界情况下,包含 Windows 风格换行的服务文件可能被错误解析,导致连接失败。
问题修复修复 pg_dump 确保自定义操作符类以正确的顺序转储
变更
修复 pg_dump 确保自定义操作符类以正确的顺序转储(Tom Lane)
如果用户定义的操作符类是某个用户定义范围类型的子类型操作符类,相关对象会以错误的顺序转储,产生无法恢复的转储。(操作符类依赖处理的这一底层失败也可能在其他情况下显现,但这是唯一已知的情况。)
问题修复修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题
变更
修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题(Michael Paquier)
关联记录 (4)
- 相同变化PostgreSQL 11.5 · 修复 contrib/passwordcheck,使其能与 check_password_hook 的其他使用者共存
- 相同变化PostgreSQL 10.10 · 修复 contrib/passwordcheck,使其能与 check_password_hook 的其他使用者共存
- 相同变化PostgreSQL 9.6.15 · 修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题
- 相同变化PostgreSQL 9.5.19 · 修复 contrib/passwordcheck 与 check_password_hook 的其他使用者共存的问题
问题修复修复 contrib/sepgsql 测试在最近的 SELinux 版本下工作的问题
变更
修复 contrib/sepgsql 测试在最近的 SELinux 版本下工作的问题(Mike Palmiotto)
改进减少 pg_upgrade 测试脚本的 stderr 输出
变更
减少 pg_upgrade 测试脚本的 stderr 输出(Tom Lane)
改进支持用 Microsoft Visual Studio 2019 构建 Postgres
变更
支持用 Microsoft Visual Studio 2019 构建 Postgres(Haribabu Kommi)
关联记录 (5)
- 相关提交PostgreSQL 13.0 · 增加使用 Visual Studio 2019 构建的支持
- 相同变化PostgreSQL 11.5 · 支持使用 Microsoft Visual Studio 2019 构建 Postgres
- 相同变化PostgreSQL 10.10 · 支持使用 Microsoft Visual Studio 2019 构建 Postgres
- 相同变化PostgreSQL 9.6.15 · 支持用 Microsoft Visual Studio 2019 构建 Postgres
- 相同变化PostgreSQL 9.5.19 · 支持用 Microsoft Visual Studio 2019 构建 Postgres
改进在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)
变更
在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)(Peifeng Qiu)
这修复了某些配置下的构建失败。
关联记录 (4)
- 相同变化PostgreSQL 11.5 · 在 Visual Studio 构建中,如果设置了 WindowsSDKVersion 环境变量,则遵循其设置
- 相同变化PostgreSQL 10.10 · 在 Visual Studio 构建中,如果设置了 WindowsSDKVersion 环境变量,则遵循其设置
- 相同变化PostgreSQL 9.6.15 · 在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)
- 相同变化PostgreSQL 9.5.19 · 在 Visual Studio 构建中,尊重 WindowsSDKVersion 环境变量(如果已设置)
改进在 Visual Studio 构建中支持 OpenSSL 1.1.0 及更新版本
变更
在 Visual Studio 构建中支持 OpenSSL 1.1.0 及更新版本(Juan José Santamaría Flecha、Michael Paquier)
改进避免 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,但某些平台修改了数据以显示历史措辞之一或另一个。仅当该时区使用现代缩写时才显示它。
改进把我们的时区库副本与 IANA tzcode 版本 2019b 同步
变更
把我们的时区库副本与 IANA tzcode 版本 2019b 同步(Tom Lane)
这增加了对 zic 新的 -b slim 选项的支持,以缩小安装的时区文件。我们目前没有使用它,但将来可能启用。
改进更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。
变更
更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。
关联记录 (4)
- 相同变化PostgreSQL 11.5 · 将时区数据文件更新到 tzdata 2019b 版,以反映巴西的夏令时法规变更,并修正香港、意大利和巴勒斯坦的历史数据。
- 相同变化PostgreSQL 10.10 · 将时区数据文件更新到 tzdata 2019b 版,以反映巴西的夏令时法规变更,并修正香港、意大利和巴勒斯坦的历史数据。
- 相同变化PostgreSQL 9.6.15 · 更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。
- 相同变化PostgreSQL 9.5.19 · 更新时区数据文件到 tzdata 版本 2019b,涉及巴西的夏令时法规变更,以及香港、意大利和巴勒斯坦的历史修正。
没有匹配的变化
尝试其他关键词,或 .
如何生成比较结果?
比较依据起始版本之后至目标版本的 PostgreSQL 发布说明。经核实的回补重复项会谨慎合并,保留每条原始说明;相关提交可能涉及独立变化,仍作为不同记录保留。
发布快照: 2026-09-26 · 安全快照: 2026-09-26
内容来自 PostgreSQL 发布说明。交互方式参考 pgversions.com 与 pgversionreport.