pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
发布日期:. 2016-02-11
此版本包含自 9.5.0 以来的多种修复。 有关 9.5 大版本中新特性的信息,参见 第 E.26 节。
对于运行 9.5.X 的用户,不需要转储/恢复。
修复正则表达式中的无限循环和缓冲区越界问题(Tom Lane)
方括号表达式中非常大的字符范围在某些情况下可能导致无限循环,在另一些情况下可能导致内存覆写。(CVE-2016-0773)
修复一个疏漏:它在罕见情况下导致哈希连接遗漏内部关系的某些元组(Tomas Vondra、Tom Lane)
在使用分组集时避免 HAVING 子句的下推(Andrew Gierth)
修复 ON CONFLICT 仲裁者 WHERE 子句的反解析(Peter Geoghegan)
使 log_line_prefix 中的 %h 和 %r 转义对因 log_connections 而发出的消息也生效(Tom Lane)
以前,%h/%r 要等到新会话发出“connection received”日志消息之后才开始生效;现在它们对该消息也生效。
避免 SSPI 身份验证期间泄漏令牌句柄(Christian Ullrich)
修复 psql 的 \det 命令,使其以与其他可能带模式限定模式的 \d 命令相同的方式解释模式参数(Reece Hart)
在 Windows 上的 pg_ctl 中,通过检查服务状态来决定输出发送到哪里,而不是检查标准输出是否为终端(Michael Paquier)
修复 pg_dump 处理扩展成员对象时的若干边界 bug(Tom Lane)
修复 pg_dump 中域约束名称引用不当的问题(Elvis Pranskevichus)
使 pg_dump 把视图的触发器标记为需要在其规则之后处理,以防止并行 pg_restore 期间可能出现的失败(Tom Lane)
在 pgbench 中加入防护,防止计算脚本指定的除法或取模运算符期间的边界溢出情况(Fabien Coelho、Michael Paquier)
抑制 pg_receivexlog 连接到 9.4 之前服务器时无用的警告消息(Marco Nenciarini)
避免同时使用 plpython2 和 plpython3 时的转储/重载问题(Tom Lane)
原则上,两个版本的 PL/Python 可以在同一个数据库中使用,但不能在同一个会话中使用(因为两个版本的 libpython 无法安全地并发使用)。然而,pg_restore 和 pg_upgrade 都会做一些可能触犯同会话限制的事情。通过更改检查的时机来规避这一点。
修复 PL/Python 回归测试,使其在 Python 3.5 下通过(Peter Eisentraut)
防止某些 PL/Java 参数被非超级用户设置(Noah Misch)
此变更缓解了 PL/Java 的一个安全 bug(CVE-2016-0766),该 bug 在 PL/Java 中已通过把这些参数标记为仅超级用户可用来修复。为了保护那些更新 PostgreSQL 比 PL/Java 更频繁的站点,核心代码现在也识别这些参数。
修复 ecpg 提供的头文件,使其不包含从预处理指令行延续到下一行的注释(Michael Meskes)
这样的注释会被 ecpg 拒绝。尚不清楚是否应该更改 ecpg 本身。
修复 hstore_to_json_loose() 对 hstore 值能否转换为 JSON 数字的测试(Tom Lane)
以前该函数可能被尾部的非字母数字字符欺骗,导致输出语法无效的 JSON。
在 contrib/postgres_fdw 中,修复由数据修改命令中使用 tableoid 触发的 bug(Etsuro Fujita、Robert Haas)
修复把 NAMEDATALEN 限制为小于 256 的不当约束(Robert Haas、Tom Lane)
通过确保以固定顺序向链接器提供文件名,提高构建输出的可重现性(Christoph Berg)
这避免了产生的可执行文件在不同构建之间可能出现按位差异。
确保 dynloader.h 包含在 MSVC 构建安装的头文件中(Bruce Momjian、Michael Paquier)
把时区数据文件更新到 tzdata 2016a 版,涉及开曼群岛、梅特拉卡特拉和外贝加尔边疆区的夏令时法规变更,以及巴基斯坦的历史数据修正。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。