pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
发布日期:. 2020-05-14
此版本包含自 9.5.21 以来的多种修复。 有关 9.5 大版本中新特性的信息,参见 第 E.26 节。
PostgreSQL 社区将于 2021 年 2 月停止对 9.5.X 版本系列的更新。建议用户尽快更新到较新的版本分支。
保留被 ALTER TABLE 重写的索引的 indisclustered 设置(Amit Langote、 Justin Pryzby)
此前,ALTER TABLE 会丢失哪个索引用于过 CLUSTER 的记录。
保留被 ALTER TABLE 重写的索引的副本身份属性 (Quan Zongliang、Peter Eisentraut)
在 DROP OWNED BY 期间更早地锁定对象 (Álvaro Herrera)
这避免了另一会话正在删除部分相同对象的竞态情况下的失败。
修复 CREATE ROLE ... IN ROLE 的错误情况处理 (Andrew Gierth)
某些错误情况会被报告为 “unexpected node type” 之类,而不是 预期的消息。
修复 gin_fuzzy_search_limit 处理中的 bug (Adé Heyward、Tom Lane)
gin_fuzzy_search_limit 的值较小时,可能因无意中多次 重新扫描同一索引页而导致意外缓慢。另一条代码路径则完全没有应用 预期的过滤,可能返回过多的值。
允许 circle 类型的输入接受文档所述的 “(” 格式(David Zhang)x,y),r
让 get_bit() 和 set_bit() 函数 应对长于 256MB 的 bytea 字符串(Movead Li)
由于位号参数只有 int4,不可能用这些函数访问长 bytea 前 256MB 之外的位。我们将在 v13 中把参数放宽为 int8,但在此之前,允许这些函数处理长 bytea 的初始子串。
避免 pg_ls_dir()、pg_timezone_names()、 pg_tablespace_databases() 及相关函数可能泄漏 打开的目录文件描述符(Justin Pryzby)
修复多态函数类型解析,使其在只给出 anyrange 输入时正确推断 anyarray 输出的实际类型(Tom Lane)
避免 REINDEX 被会话关闭信号终止时不太可能的崩溃 (Tom Lane)
防止 EXPLAIN 打印可能不正确的哈希连接表统计信息 (Konstantin Knizhnik、Tom Lane、Thomas Munro)
修复 VACUUM VERBOSE 中堆截断步骤所用时间的报告 (Tatsuhito Kasahara)
避免进程的 PS 状态中可能两次显示 “waiting” (Masahiko Sawada)
避免崩溃恢复期间过早回收 WAL 段(Jehan-Guillaume de Rorthais)
崩溃恢复期间变为可归档的 WAL 段有可能在未被归档的情况下就被回收。
避免归档恢复期间扫描无关时间线(Kyotaro Horiguchi)
这可以消除许多从归档存储获取不存在 WAL 文件的尝试,在归档访问缓慢时 很有帮助。
移除逻辑解码中虚假的 “subtransaction logged without previous top-level txn record” 错误检查(Arseny Sher、Amit Kapila)
这一条件在各种场景下都可以合法达到,因此移除该检查。
确保复制槽的 io_in_progress_lock 在失败代码路径中被 释放(Pavan Deolasee)
这可能导致 walsender 之后卡在等待该锁上。
确保备库服务器上 nextXid 不会倒退(Eka Palamadai)
这一竞态条件可能使错误的热备反馈消息被发回主库,可能导致主库过早运行 VACUUM。
为少数错误报告补上缺失的 SQLSTATE 值(Sawada Masahiko)
修复 PL/pgSQL,使其可靠地拒绝把事件触发器函数当 作普通函数执行(Tom Lane)
修复使用 sslmode=verify-full 时 libpq 中的内存泄漏(Roman Peshkurov)
连接启动期间的证书验证可能泄漏一些内存。如果客户端进程在其生命周期内 打开许多数据库连接,这就会成为问题。
修复 ecpg 在所有平台上都把仅为 “-” 的参数当作“从 stdin 读取” (Tom Lane)
修复 pg_dump 转储 RLS 策略对象上的注释 (Tom Lane)
在 pg_dump 中,把事件触发器的恢复推迟到最后 (Fabrízio de Royes Mello、Hamid Akhtar、Tom Lane)
这能把事件触发器干扰其他对象恢复的风险降到最低。
修复 createdb 实用程序中 --encoding、--lc-ctype 和 --lc-collate 值的引号处理(Michael Paquier)
contrib/lo 的 lo_manage() 函数 在被直接调用而非作为触发器调用时崩溃(Tom Lane)
在 contrib/ltree 中,防止 ltree 和 lquery 长度字段溢出(Nikita Glukhov)
修复 contrib/sepgsql 中的缓存引用泄漏 (Michael Luo)
避免在 Windows 上处理 Unix 风格区域名时的失败 (Juan José Santamaría Flecha)
在 MSVC 构建中,处理 Python 路径名中的空格(Victor Wagner)
在 MSVC 构建中,修复 Visual Studio 版本检测以适应更多语言设置 (Andrew Dunstan)
在 MSVC 构建中,对 3.0 之后的 bison 版本使用 -Wno-deprecated,与非 Windows 构建已经做的一样 (Andrew Dunstan)
更新时区数据文件到 tzdata 版本 2020a,涉及 摩洛哥和加拿大育空的夏令时法规变更,以及上海的历史修正。
America/Godthab 时区已更名为 America/Nuuk 以反映当前英语用法;不过, 旧名称仍作为兼容链接可用。
同时,更新 initdb 的已知 Windows 时区名列表 以包含新近添加的名称,提高它在该平台上正确翻译系统时区设置的 几率。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。