E.68. 版本9.1.6
发布日期: 2012-09-24
该发布中包含来自9.1.5的各种修复。 关于9.1主要版本的新功能的信息, 参阅第 E.74 节。
E.68.1. 迁移到版本9.1.6
为了运行9.1.X不需要转储/恢复。
然而,你可能需要执行REINDEX从下面第一个日志项描述的数据损坏 错误的影响中恢复。
另外,如果你从9.1.4更早版本更新, 查看第 E.70 节。
E.68.2. 变化
-
在WAL回放期间修复共享缓冲区的持久性标记(Jeff Davis)
这个错误会导致缓冲区在检查点期间不被写出来, 如果服务器没有写入缓冲区崩溃后,导致数据损坏。 在任何服务器崩溃恢复之后发生崩溃, 但它显著的可能发生在备用子服务器上, 因为这些执行更多WAL回放。 有btree和GIN索引损坏的低概率。 有表"可见视图"损坏的更高概率。 幸运的是,可见视图是9.1中非关键数据, 因此9.1安装中这样的损坏最糟糕的后果是清理短暂无效。 表正确的数据无法被这个错误损坏。
虽然没有索引损坏,由于这个错误已经在该字段发生, 作为预防措施建议在更新到 9.1.6之后在方便的时候产品安装REINDEX 所有btree和GIN索引。
同时,如果你打算做适当升级到9.2.X, 在做这些之前所以建议执行所有表的VACUUM, 当vacuum_freeze_table_age 设置为零时,这将确保在9.2.X可以依赖它之前校正可见视图中的任何残留的错误数据。 可以调整 vacuum_cost_delay以减少 清理的性能影响,而造成它需要更长时间完成。
-
修复执行器参数的规划器分配, 并且为CTE规划节点修复执行器的重新扫描逻辑(Tom Lane)
这些错误可以导致来自 扫描同一WITH子查询多次的查询的错误结果。
-
当 default_transaction_isolation 设置为serializable的时候, 修复错误操作 (Kevin Grittner, Tom Lane, Heikki Linnakangas)
症状包含Windows启动过程的死机, 以及热备操作的死机情况。
提高涉及前缀的文本搜索查询的选择行估计, 比如word:*模式(Tom Lane)
-
提高GiST索引中页分裂决定 (Alexander Korotkov, Robert Haas, Tom Lane)
多列GiST索引由于这个错误可能遭受意外膨胀。
-
如果仍然持有特权,那么修复终止的级联权限撤销(Tom Lane)
如果我们撤销一些角色X的grant选项,但是X 仍然认为该选项通过其他人的grant。 我们不应该递归地撤销X授予的角色Y的 相应特权。
-
不接受包含分配给它们的模式的扩展(Thom Brown)
这种情况创建了困惑pg_dump和 其他一些事情的循环依赖。 它也令人困惑,因此不接受它。
提高热备份不当配置错误的错误消息(Gurjeet Singh)
-
尝试configure探查
mbstowcs_l
(Tom Lane)修复AIX一些版本上的编译错误。
-
当使用PL/Perl时,修复SIGFPE的处理(Andres Freund)
Perl重置进程的SIGFPE处理器到SIG_IGN, 这可能在以后导致崩溃。 在初始化PL/Perl之后恢复正常Postgres信号处理程序。
当被执行时,如果重新定义递归的PL/Perl函数, 则防止PL/Perl崩溃(Tom Lane)
-
解决PL/Perl中可能的错误优化(Tom Lane)
一些Linux发布包含 导致PL/Perl中不正确编译代码的pthread.h不正确版本, 如果PL/Perl函数调用抛出错误的另外一个,那么导致崩溃。
-
修复contrib/pg_trgm's LIKE模式 分析代码中的错误(Fujii Masao)
如果模式包含LIKE转义字符, 那么使用三线性索引的LIKE查询可以产生错误结果。
-
修复Windows上行尾的pg_upgrade的处理(Andrew Dunstan)
以前,pg_upgrade可能添加或者删除运输返回比如函数体的地方。
Windows上,使得pg_upgrade在它 发出的脚本中使用反斜杠路径分隔符(Andrew Dunstan)
删除来自 pg_upgrade的pg_config的不必要依赖(Peter Eisentraut)
为了Fiji中的DST变化规律更新时区数据文件到tzdata发布2012f。