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

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

文档版本比较

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.6.18 发布变化

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

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

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

完整发布变化

9.6.18

2020-05-14

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

9.6.18stable支持截止 2021-11-11

PostgreSQL 9.6.18

迁移与兼容性

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

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

改进保留被 ALTER TABLE 重写的索引的 indisclustered 设置

变更

保留被 ALTER TABLE 重写的索引的 indisclustered 设置(Amit Langote、Justin Pryzby)

此前,ALTER TABLE 会丢失哪个索引用于过 CLUSTER 的记录。

关联记录 (4)
改进保留被 ALTER TABLE 重写的索引的副本身份属性

变更

保留被 ALTER TABLE 重写的索引的副本身份属性(Quan Zongliang、Peter Eisentraut)

关联记录 (4)
改进在 DROP OWNED BY 期间更早地锁定对象

变更

在 DROP OWNED BY 期间更早地锁定对象(Álvaro Herrera)

这避免了另一会话正在删除部分相同对象的竞态情况下的失败。

关联记录 (4)
问题修复修复 CREATE ROLE ... IN ROLE 的错误情况处理

变更

修复 CREATE ROLE ... IN ROLE 的错误情况处理(Andrew Gierth)

某些错误情况会被报告为 “unexpected node type” 之类,而不是预期的消息。

关联记录 (4)
问题修复修复全文搜索正确处理短语搜索之上的 NOT

变更

修复全文搜索正确处理短语搜索之上的 NOT(Tom Lane)

诸如 !(foo<->bar) 之类的查询在作为 GiST 或 GIN 索引搜索实现时找不到匹配的行。

关联记录 (3)
问题修复修复短语搜索包含同时带前缀匹配和权重限制的项时的全文搜索

变更

修复短语搜索包含同时带前缀匹配和权重限制的项时的全文搜索(Tom Lane)

关联记录 (3)
问题修复修复 ts_headline() 在处理短语查询时做出更好的标题选择

变更

修复 ts_headline() 在处理短语查询时做出更好的标题选择(Tom Lane)

关联记录 (3)
问题修复修复 gin_fuzzy_search_limit 处理中的 bug

变更

修复 gin_fuzzy_search_limit 处理中的 bug(Adé Heyward、Tom Lane)

gin_fuzzy_search_limit 的值较小时,可能因无意中多次重新扫描同一索引页而导致意外缓慢。另一条代码路径则完全没有应用预期的过滤,可能返回过多的值。

关联记录 (4)
改进允许 circle 类型的输入接受文档所述的 “(x,y),r” 格式

变更

允许 circle 类型的输入接受文档所述的 “(x,y),r” 格式(David Zhang)

关联记录 (4)
改进让 get_bit() 和 set_bit() 函数应对长于 256MB 的 bytea 字符串

变更

让 get_bit() 和 set_bit() 函数应对长于 256MB 的 bytea 字符串(Movead Li)

由于位号参数只有 int4,不可能用这些函数访问长 bytea 前 256MB 之外的位。我们将在 v13 中把参数放宽为 int8,但在此之前,允许这些函数处理长 bytea 的初始子串。

关联记录 (5)
问题修复避免 pg_ls_dir()、pg_timezone_names()、pg_tablespace_databases() 及相关函数可能泄漏打开的目录文件描述符

变更

避免 pg_ls_dir()、pg_timezone_names()、pg_tablespace_databases() 及相关函数可能泄漏打开的目录文件描述符(Justin Pryzby)

关联记录 (4)
问题修复修复多态函数类型解析,使其在只给出 anyrange 输入时正确推断 anyarray 输出的实际类型

变更

修复多态函数类型解析,使其在只给出 anyrange 输入时正确推断 anyarray 输出的实际类型(Tom Lane)

关联记录 (4)
问题修复避免 REINDEX 被会话关闭信号终止时不太可能的崩溃

变更

避免 REINDEX 被会话关闭信号终止时不太可能的崩溃(Tom Lane)

关联记录 (4)
改进防止 EXPLAIN 打印可能不正确的哈希连接表统计信息

变更

防止 EXPLAIN 打印可能不正确的哈希连接表统计信息(Konstantin Knizhnik、Tom Lane、Thomas Munro)

关联记录 (4)
问题修复修复 VACUUM VERBOSE 中堆截断步骤所用时间的报告

变更

修复 VACUUM VERBOSE 中堆截断步骤所用时间的报告(Tatsuhito Kasahara)

关联记录 (4)
改进避免进程的 PS 状态中可能两次显示 “waiting”

变更

避免进程的 PS 状态中可能两次显示 “waiting”(Masahiko Sawada)

关联记录 (4)
问题修复避免崩溃恢复期间过早回收 WAL 段

变更

避免崩溃恢复期间过早回收 WAL 段(Jehan-Guillaume de Rorthais)

崩溃恢复期间变为可归档的 WAL 段有可能在未被归档的情况下就被回收。

关联记录 (4)
改进避免归档恢复期间扫描无关时间线

变更

避免归档恢复期间扫描无关时间线(Kyotaro Horiguchi)

这可以消除许多从归档存储获取不存在 WAL 文件的尝试,在归档访问缓慢时很有帮助。

关联记录 (4)
改进移除逻辑解码中虚假的 “subtransaction logged without previous top-level txn record” 错误检查

变更

移除逻辑解码中虚假的 “subtransaction logged without previous top-level txn record” 错误检查(Arseny Sher、Amit Kapila)

这一条件在各种场景下都可以合法达到,因此移除该检查。

关联记录 (4)
改进确保复制槽的 io_in_progress_lock 在失败代码路径中被释放

变更

确保复制槽的 io_in_progress_lock 在失败代码路径中被释放(Pavan Deolasee)

这可能导致 walsender 之后卡在等待该锁上。

关联记录 (4)
问题修复修复同步备库管理中的竞态条件

变更

修复同步备库管理中的竞态条件(Tom Lane)

在 synchronous_standby_names 设置更改期间,存在一个时间窗口,可能对是否可以释放等待同步提交的事务做出错误决定。如果一个 walsender 进程退出并立即被另一个取代,也存在类似错误决定的风险。

关联记录 (3)
改进确保备库服务器上 nextXid 不会倒退

变更

确保备库服务器上 nextXid 不会倒退(Eka Palamadai)

这一竞态条件可能使错误的热备反馈消息被发回主库,可能导致主库过早运行 VACUUM。

关联记录 (3)
改进为少数错误报告补上缺失的 SQLSTATE 值

变更

为少数错误报告补上缺失的 SQLSTATE 值(Sawada Masahiko)

关联记录 (4)
问题修复修复 PL/pgSQL,使其可靠地拒绝把事件触发器函数当作普通函数执行

变更

修复 PL/pgSQL,使其可靠地拒绝把事件触发器函数当作普通函数执行(Tom Lane)

关联记录 (4)
问题修复修复使用 sslmode=verify-full 时 libpq 中的内存泄漏

变更

修复使用 sslmode=verify-full 时 libpq 中的内存泄漏(Roman Peshkurov)

连接启动期间的证书验证可能泄漏一些内存。如果客户端进程在其生命周期内打开许多数据库连接,这就会成为问题。

关联记录 (4)
问题修复修复 ecpg 在所有平台上都把仅为 “-” 的参数当作“从 stdin 读取”

变更

修复 ecpg 在所有平台上都把仅为 “-” 的参数当作“从 stdin 读取”(Tom Lane)

关联记录 (4)
改进为 pg_dump 添加 ALTER ... DEPENDS ON EXTENSION 支持

变更

为 pg_dump 添加 ALTER ... DEPENDS ON EXTENSION 支持(Álvaro Herrera)

pg_dump 此前忽略以这种方式添加的依赖,导致它们在转储/恢复或 pg_upgrade 期间被遗忘。

关联记录 (3)
问题修复修复 pg_dump 转储 RLS 策略对象上的注释

变更

修复 pg_dump 转储 RLS 策略对象上的注释(Tom Lane)

关联记录 (4)
改进在 pg_dump 中,把事件触发器的恢复推迟到最后

变更

在 pg_dump 中,把事件触发器的恢复推迟到最后(Fabrízio de Royes Mello、Hamid Akhtar、Tom Lane)

这能把事件触发器干扰其他对象恢复的风险降到最低。

关联记录 (4)
问题修复修复 createdb 实用程序中 --encoding、--lc-ctype 和 --lc-collate 值的引号处理

变更

修复 createdb 实用程序中 --encoding、--lc-ctype 和 --lc-collate 值的引号处理(Michael Paquier)

关联记录 (4)
改进contrib/lo 的 lo_manage() 函数在被直接调用而非作为触发器调用时崩溃

变更

contrib/lo 的 lo_manage() 函数在被直接调用而非作为触发器调用时崩溃(Tom Lane)

关联记录 (4)
改进在 contrib/ltree 中,防止 ltree 和 lquery 长度字段溢出

变更

在 contrib/ltree 中,防止 ltree 和 lquery 长度字段溢出(Nikita Glukhov)

关联记录 (4)
问题修复修复 contrib/sepgsql 中的缓存引用泄漏

变更

修复 contrib/sepgsql 中的缓存引用泄漏(Michael Luo)

关联记录 (4)
改进避免在 Windows 上处理 Unix 风格区域名时的失败

变更

避免在 Windows 上处理 Unix 风格区域名时的失败(Juan José Santamaría Flecha)

关联记录 (4)
改进在 MSVC 构建中,处理 Python 路径名中的空格

变更

在 MSVC 构建中,处理 Python 路径名中的空格(Victor Wagner)

关联记录 (4)
问题修复在 MSVC 构建中,修复 Visual Studio 版本检测以适应更多语言设置

变更

在 MSVC 构建中,修复 Visual Studio 版本检测以适应更多语言设置(Andrew Dunstan)

关联记录 (4)
改进在 MSVC 构建中,对 3.0 之后的 bison 版本使用 -Wno-deprecated,与非 Windows 构建已经做的一样

变更

在 MSVC 构建中,对 3.0 之后的 bison 版本使用 -Wno-deprecated,与非 Windows 构建已经做的一样(Andrew Dunstan)

关联记录 (4)
改进更新时区数据文件到 tzdata 版本 2020a,涉及摩洛哥和加拿大育空的夏令时法规变更,以及上海的历史修正。

变更

更新时区数据文件到 tzdata 版本 2020a,涉及摩洛哥和加拿大育空的夏令时法规变更,以及上海的历史修正。

America/Godthab 时区已更名为 America/Nuuk 以反映当前英语用法;不过,旧名称仍作为兼容链接可用。

同时,更新 initdb 的已知 Windows 时区名列表以包含新近添加的名称,提高它在该平台上正确翻译系统时区设置的几率。

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

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

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

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