E.13. 发布9.1.6

发布日期: 2012-09-24

该发布中包含来自9.1.5的各种修复。 关于9.1主要版本的新功能的信息, 参阅Section E.19

E.13.1. 迁移到版本9.1.6

为了运行9.1.X不需要转储/恢复。

然而,你可能需要执行REINDEX从下面第一个日志项描述的数据损坏 错误的影响中恢复。

另外,如果你从9.1.4更早版本更新, 查看9.1.4的发布说明。

E.13.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。