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

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

文档版本比较

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.5.25 发布变化

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

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

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

完整发布变化

9.5.25

2021-02-11

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

9.5.25stable支持截止 2021-02-11

PostgreSQL 9.5.25

迁移与兼容性

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

不过,请看下面的第一条变更日志条目,它描述了升级之后可能宜对索引执行 REINDEX 的几种情况。

另外,如果你是从 9.5.20 之前的版本升级,参见第 E.6 节。

问题修复修复 CREATE INDEX CONCURRENTLY,使其等待并发的预备事务

变更

修复 CREATE INDEX CONCURRENTLY,使其等待并发的预备事务(Andrey Borodin)

在 CREATE INDEX CONCURRENTLY 等待所有并发事务完成以便能看到它们插入的行的那个时刻,出于同样的原因,它也必须等待所有预备事务完成。此前没有这样做,意味着预备事务插入的行可能被遗漏在新索引之外,导致依赖该索引的查询漏掉这些行。在启用了预备事务的安装(max_prepared_transactions > 0)中,如果并发构建索引时可能发生过此问题,建议对这些索引执行 REINDEX。

关联记录 (5)
改进避免对计划包含 MergeAppend 节点的游标应用 WHERE CURRENT OF 时出现错误结果

变更

避免对计划包含 MergeAppend 节点的游标应用 WHERE CURRENT OF 时出现错误结果(Tom Lane)

这种情况不受支持(一般而言,使用 ORDER BY 的游标不保证是简单可更新的);但代码此前没有拒绝它,并且可能静默地给出假匹配。

关联记录 (5)
问题修复修复对计划包含自定义扫描节点的游标应用 WHERE CURRENT OF 时的崩溃

变更

修复对计划包含自定义扫描节点的游标应用 WHERE CURRENT OF 时的崩溃(David Geier)

关联记录 (5)
问题修复修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理

变更

修复规划器对在某个连接层级计算且仅在同一层级使用的占位符的处理(Tom Lane)

这一疏漏可能导致“failed to build any N-way joins”规划器错误。

关联记录 (5)
改进更谨慎地判断索引访问方法是否支持 mark/restore

变更

更谨慎地判断索引访问方法是否支持 mark/restore(Andrew Gierth)

这防止了罕见边界情况下缺少支持函数的错误。

关联记录 (5)
问题修复修复 ALTER DEFAULT PRIVILEGES 安全处理重复参数的问题

变更

修复 ALTER DEFAULT PRIVILEGES 安全处理重复参数的问题(Michael Paquier)

同一条命令中重复的角色或模式名可能导致“tuple already updated by self”错误或唯一约束冲突。

关联记录 (5)
改进当 pg_authid 变化时刷新与 ACL 相关的缓存

变更

当 pg_authid 变化时刷新与 ACL 相关的缓存(Noah Misch)

这一更改确保与权限相关的决策能及时反映 ALTER ROLE ... [NO] INHERIT 的结果。

关联记录 (5)
改进防止对有歧义的 CREATE TABLE LIKE 子句的错误处理

变更

防止对有歧义的 CREATE TABLE LIKE 子句的错误处理(Tom Lane)

LIKE 子句在新表初始创建之后会被重新检查,以处理索引等的导入。这一重新检查有可能找到同名的另一张表,导致意外的行为;一个例子是新表是与 LIKE 目标同名的临时表。

关联记录 (5)
改进调整 CREATE TABLE LIKE 中操作的顺序,使索引在外键约束构建之前被克隆

变更

调整 CREATE TABLE LIKE 中操作的顺序,使索引在外键约束构建之前被克隆(Tom Lane)

这修复了外层 CREATE TABLE 中声明的自引用外键约束依赖于来自 LIKE 子句的索引的情况。

关联记录 (5)
改进禁止把继承子表转换为视图

变更

禁止把继承子表转换为视图(Tom Lane)

关联记录 (5)
改进确保已删除关系占用的磁盘空间在提交时被及时释放

变更

确保已删除关系占用的磁盘空间在提交时被及时释放(Thomas Munro)

此前,如果被删除的关系跨越多个 1GB 段,只有第一段被立即截断。其他段只是被解除链接,只要还有其他后端打开着这些文件,这不会让内核释放存储。

关联记录 (5)
问题修复修复 COPY FROM 中反斜线转义的多字节字符的处理

变更

修复 COPY FROM 中反斜线转义的多字节字符的处理(Heikki Linnakangas)

反斜线后跟多字节字符的情况没有被正确处理。在某些客户端字符编码下,这可能导致把多字节字符的一部分误解释为字段分隔符或复制数据结束标记。

关联记录 (5)
改进避免不带 ANALYZE 的 EXPLAIN 预先分配执行器哈希表

变更

避免不带 ANALYZE 的 EXPLAIN 预先分配执行器哈希表(Alexey Bashtanov)

关联记录 (5)
问题修复修复 LISTEN/NOTIFY 队列处理中新近引入的竞态条件

变更

修复 LISTEN/NOTIFY 队列处理中新近引入的竞态条件(Tom Lane)

新监听的后端可能试图读取正在被截断的 SLRU 页,可能导致错误。

队列尾指针可能被设置为一个不等于任何后端队列位置的值,导致队列截断逻辑被有效禁用。继续使用 NOTIFY 随后会导致队列填满警告,最终在服务器重启之前无法再发送任何通知。

关联记录 (5)
改进允许 jsonb 连接操作符处理 JSON 数据类型的所有组合

变更

允许 jsonb 连接操作符处理 JSON 数据类型的所有组合(Tom Lane)

我们可以连接两个 JSON 对象或两个 JSON 数组。其他情况通过把非数组输入包装成单元素数组再执行数组连接来处理。此前,某些输入组合遵循此规则,另一些则任意地抛出错误。

关联记录 (5)
问题修复修复 BRE 模式正则表达式中解析 * 量词时使用未初始化值的问题

变更

修复 BRE 模式正则表达式中解析 * 量词时使用未初始化值的问题(Tom Lane)

这个错误可能导致量词表现为非贪婪,即表现得像完整正则表达式中的 *? 量词那样。

关联记录 (5)
改进防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失

变更

防止因错误检测 SLRU 日志回卷点而可能发生的的数据丢失(Noah Misch)

回卷点通常落在页中间,必须把它舍入到页边界,而这一步没有正确完成。除非安装已经到达距 SLRU 溢出不到一页的位置(在正常运行的系统中不太可能),否则不会出现问题。如果真的发生,之后会表现为“apparent wraparound”或“could not access status of transaction”错误。

关联记录 (5)
问题修复修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏

变更

修复 walsender 进程在为逻辑解码发送新快照期间的内存泄漏(Amit Kapila)

关联记录 (5)
问题修复修复 walsender 在终止复制之后接受其他命令的问题

变更

修复 walsender 在终止复制之后接受其他命令的问题(Jeff Davis)

关联记录 (5)
改进避免检查带 TRANSFORM 选项的函数时 pg_get_functiondef() 的断言失败

变更

避免检查带 TRANSFORM 选项的函数时 pg_get_functiondef() 的断言失败(Tom Lane)

关联记录 (5)
改进在 psql 中,重新允许在 \connect 命令的 connection_string 参数中包含密码

变更

在 psql 中,重新允许在 \connect 命令的 connection_string 参数中包含密码(Tom Lane)

这过去可以工作,但最近的一次 bug 修复导致密码被忽略(结果是提示输入密码)。

关联记录 (5)
问题修复修复 psql 的 \help 命令的若干 bug

变更

修复 psql 的 \help 命令的若干 bug(Kyotaro Horiguchi、Tom Lane)

带两个参数词的 \help 未能只用第一个词找到命令说明,例如 \help reset all 本应显示 RESET 的帮助但没有。此外,\help 常常在应该调用分页器时没有调用。它还泄漏内存。

关联记录 (5)
改进在 pg_rewind 中,确保回卷备库服务器时所有 WAL 都被考虑到

变更

在 pg_rewind 中,确保回卷备库服务器时所有 WAL 都被考虑到(Ian Barwick、Heikki Linnakangas)

关联记录 (5)
问题修复在部分客户端程序的连接失败错误消息中报告正确的数据库名

变更

在部分客户端程序的连接失败错误消息中报告正确的数据库名(Álvaro Herrera)

如果数据库名是默认推断而非在命令行上给出的,pg_dumpall、pgbench、oid2name 和 vacuumlo 在连接失败之后会产生误导性的错误消息。

关联记录 (5)
问题修复修复 contrib/auto_explain 中的内存泄漏

变更

修复 contrib/auto_explain 中的内存泄漏(Japin Li)

生成 EXPLAIN 输出期间消耗的内存直到当前事务结束(对顶层语句)或外围语句结束(对嵌套语句)才被释放。在启用 log_nested_statements 时这尤其成问题。

关联记录 (5)
问题修复在 contrib/postgres_fdw 中,避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接

变更

在 contrib/postgres_fdw 中,避免删除用户映射或外部服务器对象时泄漏到远程服务器的打开连接(Bharath Rupireddy)

依赖于被删除用户映射或外部服务器的打开连接不再能被引用,但此前它们仍会在本地会话期间被保留。

关联记录 (5)
改进在 contrib/pgcrypto 中,检查 OpenSSL EVP 函数的错误返回

变更

在 contrib/pgcrypto 中,检查 OpenSSL EVP 函数的错误返回(Michael Paquier)

我们并不真的预期这里会出错,但这一更改能让静态分析工具安静下来。

关联记录 (5)
问题修复在 contrib/pg_trgm 的 GiST 索引支持中,避免 picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃

变更

在 contrib/pg_trgm 的 GiST 索引支持中,避免 picksplit 恰好在两个索引项上被调用这一罕见情况下的崩溃(Andrew Gierth、Alexander Korotkov)

关联记录 (5)
问题修复修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中超时的计算错误

变更

修复 contrib/pg_prewarm 和 contrib/postgres_fdw 中超时的计算错误(Alexey Kondratov、Tom Lane)

contrib/pg_prewarm 的 autoprewarm 父进程的主循环把期望的睡眠时间低估了 1000 倍,导致消耗远超预期的 CPU。在等待远程服务器的结果时,contrib/postgres_fdw 把期望的超时高估了 1000 倍(不过这个错误已被 60 秒的钳制所缓解)。

这两个错误都源于把秒和微秒错误地转换为毫秒。引入新的 API TimestampDifferenceMilliseconds(),使将来更容易做对。

关联记录 (5)
改进改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式

变更

改进 configure 在 macOS 上选择 PG_SYSROOT 的启发式(Tom Lane)

当 Xcode 比底层操作系统更新时,新方法更可能产生理想的结果。选择与操作系统版本不匹配的 sysroot 可能导致不可用的可执行文件。

关联记录 (5)
改进在 macOS 上构建时,在链接步骤和编译步骤中一样指定 -isysroot

变更

在 macOS 上构建时,在链接步骤和编译步骤中一样指定 -isysroot(James Hilliard)

这同样改进了 Xcode 与操作系统不同步时的结果。

关联记录 (5)
改进更新时区数据文件到 tzdata 版本 2021a,涉及俄罗斯(伏尔加格勒时区)和南苏丹的夏令时法规变更,以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。

变更

更新时区数据文件到 tzdata 版本 2021a,涉及俄罗斯(伏尔加格勒时区)和南苏丹的夏令时法规变更,以及澳大利亚、巴哈马、伯利兹、百慕大、加纳、以色列、肯尼亚、尼日利亚、巴勒斯坦、塞舌尔和瓦努阿图的历史修正。

值得注意的是,Australia/Currie 时区已被修正到与 Australia/Hobart 相同的程度。

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

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

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

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