发布日期:. 2013-04-04
该版本包含了9.1.8的各种修复。 关于9.1主要版本的新功能信息, 请参阅第 E.107 节。
为了运行9.1.X不需要转储/恢复。
然而,该发布修正了GiST索引管理的一些错误。
在安装这个更新之后,REINDEX
任何GiST索引满足一个或更多个下面描述的条件是明智的。
同时,如果你正从9.1.6更早版本中更新,参阅第 E.101 节。
修复服务器命令行开关安全解析(Mitsumasa Kondo, Kyotaro Horiguchi)
包含以“-
”开头的数据库名字的连接请求可以用来损坏或者破坏
服务器的数据目录文件,即使最终拒绝该请求。(CVE-2013-1899)
在每个postmaster子进程中重置OpenSSL随机状态(Marko Kreen)
通过contrib/pgcrypto
函数产生的随机数
可能对于另外一个猜测的数据库用户相对容易,
避免这种情况。
当postmaster使用ssl
= on
被配置时,
该风险是非常显著的,
但是大多数连接不能使用SSL加密。(CVE-2013-1900)
使用REPLICATION权限检查测试当前用户不是认证用户(Noah Misch)
一个未经授权的数据库用户可以利用
这个错误调用pg_start_backup()
或者pg_stop_backup()
,
因此可能干扰常规备份的创建。(CVE-2013-1901)
当不适合这样执行时, 不使用“fuzzy”几何比较修复GiST索引。 (Alexander Korotkov)
核心几何类型使用“fuzzy”等式执行比较,
但是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索引。
修复gist_point_consistent
处理
模糊一致性(Alexander Korotkov)
在point
列GiST索引上的索引扫描可能有时
产生不同于顺序扫描的结果,
因为gist_point_consistent
不同意底层操作编码关于是否精确或者模糊的执行比较。
在WAL重放中修复缓冲区泄露(Heikki Linnakangas)
在回放期间这个缺陷可能产生“不正确 的本地针数”错误,使得恢复不可能。
修复DELETE RETURNING
中的紊乱情况(Tom Lane)
在这样的情况下,DELETE RETURNING
试图
从当前进程不再有任何针的
共享缓冲区中抓取数据。
如果一些其他进程同时改变缓冲区,
这将导致垃圾RETURNING
输出,
甚至崩溃。
修复规则表达式编译中的无限循环风险(Tom Lane, Don Porter)
修复规则表达式编译中潜在的空指针引用(Tom Lane)
合适的地方修复to_char()
只
使用ASCII大小写折叠规则(Tom Lane)
这种修复一些区域独立化的模板模式的不当行为,但是
在Turkish区域中胡乱操作“I
”和
“i
”。
修复时间戳1999-12-31 24:00:00
不必要的拒绝(Tom Lane)
当一个事务执行UNLISTEN
然后LISTEN
时,修复逻辑错误(Tom Lane)
该会话根本不监听通知事件,尽管它确实在这种情况下应该监听。
在列被添加到依赖于其他视图的 视图中之后修复可能的规划器崩溃(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和pg_upgrade中 的无效索引(Michael Paquier, Bruce Momjian)
备份无效索引可能导致恢复时间的问题, 比如如果索引创建失败的原因是它试图强制 不满足表的数据的唯一性条件。同时,如果索引创建实际上仍然在进行中, 认为它是一个不受约束的DDL变化似乎是合理的,其中pg_dump 不期望备份。pg_upgrade现在也跳过无效索引而非失败。
在pg_basebackup中,当备份表空间时, 仅仅包含当前服务器版本的子目录 (Heikki Linnakangas)
在pg_basebackup和 pg_receivexlog中添加服务器版本检查, 因此它们与不工作的版本联合失败(Heikki Linnakangas)
修复contrib/pg_trgm
的similarity()
函数为少于三个的字符串返回零(Tom Lane)
先前它返回NaN
由于内部除以零。
为了Chile, Haiti, Morocco, Paraguay和一些Russian区域中DST变化规律更 新时间区域数据文件到tzdata发布2013b。 同时为更多地方修正历史区域数据。
同时,为俄罗斯和其他地方的最近变化更新时区缩写文件:
CHOT
, GET
,
IRKT
, KGT
,
KRAT
, MAGT
,
MAWT
, MSK
,
NOVT
, OMST
,
TKT
, VLAT
,
WST
, YAKT
,
YEKT
现在遵从他们当前的含义,
以及
VOLT
(Europe/Volgograd)和
MIST
(Antarctica/Macquarie)
被添加到缺省缩写列表中。