发布日期:. 2016-03-31
这个版本包含各种自9.3.11以来的修复。关于9.3主版本的新特性信息, 请查看第 E.57 节。
修复索引的ROW()
比较中NULL索引项的不正确处理
(Tom Lane)
使用行比较的索引搜索比如ROW(a, b) >
ROW('x', 'y')
将在到达b
列中的NULL条目时停止,
忽略可能存在与a
的稍后值相关联的非NULL b
值的事实。
避免由于重命名文件之前或之后没有适当的
fsync()
调用,导致不太可能的数据丢失情况 (Michael Paquier,
Tomas Vondra, Andres Freund)
正确处理在服务器启动期间pg_subtrans
接近XID wraparound的情况
(Jeff Janes)
修复由于多次尝试释放localeconv()
输出字符串而导致的极端崩溃 (Tom Lane)
修复ispell
字典的附加文件的解析
(Tom Lane)
如果附加文件包含字节长度在大小写折叠期间变化的字符,
例如土耳其语在UTF8区域设置中的I
,则代码可能会出错。
避免使用sscanf()
解析ispell
字典文件 (Artur Zakirov)
这避免了FreeBSD派生平台上的可移植性问题(包括 macOS)。
避免在具有支持AVX2 CPU的旧版Windows版本(在7SP1/2008R2SP1之前)上崩溃, 并使用Visual Studio 2013完成Postgres构建 (Christian Ullrich)
这是Visual Studio 2013运行库中的一个错误的解决方法, Microsoft已经声明他们不会在该版本中修复。
修复psql的tab完成逻辑,以正确处理多字节字符 (Kyotaro Horiguchi, Robert Haas)
为SECURITY LABEL
修复psql的tab完成
(Tom Lane)
在SECURITY LABEL
之后键入TAB可能会导致崩溃或提供不适当的关键字。
如果在命令行中没有指定,则让pg_ctl从PGCTLTIMEOUT
环境变量中接受一个等待超时 (Noah Misch)
通过允许他们对postmaster启动和关闭全局指定一个长于正常的超时, 可以方便测试较慢的buildfarm成员。
修复pg_ctl中Windows服务状态的不正确测试 (Manuel Mathar)
上一组小版本尝试修复pg_ctl 以正确确定是否将日志消息发送到Windows事件日志,但是测试弄反了。
修复pgbench以正确的处理-C
和-M prepared
选项的组合 (Tom Lane)
在pg_upgrade中,当新数据目录位于旧数据目录内时, 跳过创建删除脚本 (Bruce Momjian)
在这种情况下,盲目应用脚本将导致新的数据目录丢失。
在PL/Perl中,将空的Postgres数组正确的翻译为空的Perl数组 (Alex Hunsaker)
使PL/Python处理不是有效Python标识符的函数名称 (Jim Nasby)
修复contrib/pgstattuple
的pgstatindex()
函数返回的多个统计错误 (Tom Lane)
删除MSVC构建中对psed
的依赖,因为核心Perl不再提供它了
(Michael Paquier, Andrew Dunstan)
更新时区数据文件为tzdata release 2016c, 因为阿塞拜疆、智利、海地、巴勒斯坦和俄罗斯(Altai, Astrakhan, Kirov, Sakhalin, Ulyanovsk 区域)的DST法律变更,加上立陶宛、 摩尔多瓦和俄罗斯(Kaliningrad, Samara, Volgograd)的历史更正。