E.36. 发布8.4.17
发布日期: 2013-04-04
该发布包含8.4.16的各种修复。关于8.4主要发布的新功能的信息, 参阅Section E.53。
E.36.1. 迁移到版本8.4.17
运行8.4.X不需要备份/恢复。
然而,该发布修正了GiST索引管理中的几个错误。 安装这个更新之后,对于REINDEX
满足下面描述的一个或者多个条件的任何GiST索引是明智的。
同时,如果你从8.4.10更早版本更新,参阅8.4.10的发布说明。
E.36.2. 变化
在每个postmaster子进程中重置OpenSSL随机状态(Marko Kreen)
这避免了这样一种情况,其中通过
contrib/pgcrypto
产生的随机值 可能对于另一个数据库用户相对容易。当postmaster可以配置ssl
=on
时, 该风险是唯一显著的,但是大多数连接不使用SSL加密。(CVE-2013-1900)当它不适合这样做的时候,修复GiST索引不使用"模糊"几何比较(Alexander Korotkov)
核心几何类型执行使用"模糊"平等比较,但是
gist_box_same
必须执行精确比较,否则使用它的GiST索引可能变得不一致。 安装该更新之后,用户应该在box
,polygon
,circle
或者point
列上REINDEX
任何GiST索引。 因为所有这些使用gist_box_same
。修复不正确的范围并集以及 为了可变宽度数据类型使用
contrib/btree_gist
的GiST索引中惩罚逻辑, 也就是text
,bytea
,bit
和numeric
列(Tom Lane)这些错误可能导致不一致索引, 其中一些出现的关键字不会被搜索发现, 并且在无用的索引膨胀中, 在安装此更新后建议用户
REINDEX
这种索引。修复为多列索引在GiST页中分离代码的错误(Tom Lane)
这些错误可能导致不一致索引, 其中一些出现的关键字不会被搜索发现, 并且在索引中是不必要的无效的搜索。 在安装此更新后建议用户
REINDEX
多列GiST索引。修复正则表达式编译中无限循环风险(Tom Lane,Don Porter)
修复正则表达式编译中潜在的空指针取消引用(Tom Lane)
修复
to_char()
在合适的地方使用ASCII大小写折叠规则(Tom Lane)这修复了应该区域独立的一些模板模式的不当操作, 但是在Turkish地区胡乱操作"
I
"和"i
"。修复时间戳
1999-12-31 24:00:00
的不必要拒绝(Tom Lane)删除无效的"picksplit不支持二次分裂"日志消息(Josh Hansen, Tom Lane)
该消息似乎被添加到从未写入的期望代码中, 并且可能从来不是,因为二次分裂的GiST的缺省处理 实际上相当好。 所以停止打扰关于它的最终用户。
修复发送会话的 最后几个事务提交/终止计数到统计收集器的可能错误(Tom Lane)
消除PL/Perl的
spi_prepare()
函数中内存泄露(Alex Hunsaker, Tom Lane)修复pg_dumpall以 正确处理包含"
=
"的数据库名字(Heikki Linnakangas)当给定一个不正确连接字符串时,避免pg_dump崩溃(Heikki Linnakangas)
忽略pg_dump中无效索引(Michael Paquier)
备份无效索引可能导致恢复时间的问题, 比如如果索引创建失败的原因是它试图强制 不满足表的数据的唯一性条件。同时,如果索引创建实际上仍然在进行中, 认为它是一个不受约束的DDL变化似乎是合理的,其中pg_dump 不期望备份。
修复
contrib/pg_trgm
的similarity()
函数为少于三个的字符串返回零(Tom Lane)以前它返回
NaN
由于内部除以零。为了Chile, Haiti, Morocco, Paraguay和一些Russian区域中DST变化规律更 新时间区域数据文件到tzdata发布2013b。 同时为更多地方修正历史区域数据。
另外,在Russia和其他地方更新最近变化的时区缩写文件:
CHOT
,GET
,IRKT
,KGT
,KRAT
,MAGT
,MAWT
,MSK
,NOVT
,OMST
,TKT
,VLAT
,WST
,YAKT
,YEKT
现在遵从它们当前意义,并且VOLT
(Europe/Volgograd)和MIST
(Antarctica/Macquarie)被添加到缺省缩写列表中。