E.77. 版本9.2.5

E.77.1. 迁移到版本9.2.5
E.77.2. 变化

发布日期: 2013-10-10

该版本包含来自9.2.4的各种修复。关于9.2主要版本新功能的信息,请参阅第 E.82 节

E.77.1. 迁移到版本9.2.5

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

同时,如果你是从早于9.2.4的版本上更新,参阅第 E.78 节

E.77.2. 变化

  • 阻止尝试合并大小写标识符时多字节字符的损坏 (Andrew Dunstan)

    PostgreSQL仅在使用单字节服务器编码时合并大小写非ASCII字符。

  • 修复在范围字段上创建B-tree索引时的内存泄露 (Heikki Linnakangas)

  • wal_level = hot_standby的时候,修复后端写进程中检查点内存泄露。(Naoya Anzai)

  • 修复通过lo_open()故障产生的内存泄露。(Heikki Linnakangas)

  • work_mem正使用大于24GB的内存时,那么修复内存过量使用错误。(Stephen Frost)

  • 可串行化快照修复(Kevin Grittner, Heikki Linnakangas)

  • 修复使用SSL时libpq中的死锁错误 (Stephen Frost)

  • 修复线程libpq应用中可能的SSL状态损坏 (Nick Phillips, Stephen Frost)

  • 当在通用和自定义计划之间选择时,提高计划成本估计(Tom Lane)

    当计划成本高时,那么该变化将有利于通用计划。

  • 正确计算估计布尔列包含许多NULL值的行(Andrew Gierth)

    当估计计划成本时,先前的测试像col IS NOT TRUEcol IS NOT FALSE没有合理的NULL值因素。

  • 修复UNION ALL和继承查询中限定符评估成本的计算 (Tom Lane)

    这修复了一些WHERE子句的评估非常昂贵时,选择非最佳查询规划的情况。

  • 阻止叠加WHERE子句到不安全的UNION/INTERSECT子查询中(Tom Lane)

    SELECT列表中包含设置返回函数或不稳定函数的UNIONINTERSECT的子查询会被不适当的最优化,导致运行时错误或不正确的查询结果。

  • 修复failed to locate grouping columns规划器失败的罕见情况 (Tom Lane)

  • 修复有删除列的外表的pg_dump (Andrew Dunstan)

    先前这种情况可能导致pg_upgrade错误。

  • 重新安排相关扩展规则的pg_dump处理和事件触发(Joe Conway)

  • 如果通过pg_dump -t或者-n指定,那么强制扩展表转储(Joe Conway)

  • 提高视图转储代码对引用表中被删除的字段的处理 (Tom Lane)

  • 使用显示正确格式名的目录归档修复pg_restore -l(Fujii Masao)

  • 正确记录使用UNIQUEPRIMARY KEY语法创建的 索引注释(Andres Freund)

    这将修复并行pg_restore故障。

  • 造成pg_basebackup -x使用空xlog目录抛出错误而不是崩溃的原因 (Magnus Hagander, Haruka Takatsuka)

  • 清理切换之前合理保证WAL文件传输(Fujii Masao)

    以前,在备库上所有WAL文件被取代之前可能关闭流复制连接。

  • 修复恢复期间WAL段时间线处理 (Mitsumasa Kondo, Heikki Linnakangas)

    备用恢复期间回收WAL文件会导致恢复过早的完成,导致数据丢失。

  • 阻止由于引用未初始化的空页而引起的WAL重放中的错误 (Andres Freund)

  • 修复REINDEX TABLEREINDEX DATABASE以 恰当的重新生效约束并且标记无效索引为有效(Noah Misch)

    REINDEX INDEX一直正常工作。

  • 在插入SP-GiST索引期间避免死锁(Teodor Sigaev)

  • 在并发CREATE INDEX CONCURRENTLY操作期间修复可能死锁(Tom Lane)

  • 修复GiST索引查找崩溃(Tom Lane)

  • 修复regexp_matches()处理零长度匹配(Jeevan Chalke)

    先前,零长度匹配像'^'可以返回很多匹配。

  • 修复过于复杂的正则表达式的错误(Heikki Linnakangas)

  • 为反向引用结合非贪婪量词修复正则表达式匹配错误(Jeevan Chalke)

  • 避免CREATE FUNCTION检查SET变量除非启动函数体检查(Tom Lane)

  • 允许ALTER DEFAULT PRIVILEGES在模式上操作不需要CREATE权限(Tom Lane)

  • 放宽用于查询中关键字的限制(Tom Lane)

    特别地,放宽角色名称,语言名字,EXPLAINCOPY选项,以及 SET值的关键字限制。这允许COPY ... (FORMAT BINARY) 像预期的那样工作;以前BINARY需要引用。

  • COPY失败期间打印合适行数 (Heikki Linnakangas)

  • 修复pgp_pub_decrypt()因此为带有密码的秘钥工作(Marko Kreen)

  • pg_upgrade使用pg_dump --quote-all-identifiers避免在版本之间关键字改变的问题(Tom Lane)

  • 在清理无索引表中删除少有的不正确的警告(Heikki Linnakangas)

  • 如果VACUUM ANALYZE截断文件的尝试由于锁冲突而取消, 确保它仍然运行ANALYZE (Kevin Grittner)

  • 当在预备查询中执行事务控制命令(比如ROLLBACK)时,避免可能的失败(Tom Lane)

  • 确保所有平台上浮点数据输入接受标准的infinity拼写 (Tom Lane)

    C99标准指出允许的拼写是inf+inf-infinfinity+infinity-infinity。 确保我们能够认出它们,即使该平台的strtod函数不能认出。

  • 当关闭track_activities的时候,避免不必要报告(Tom Lane)

  • 扩展记录和数组比较行的能力(Rafal Rzepecki,Tom Lane)

  • psqlPSQLRC变量包含一个波浪号防止崩溃(Bruce Momjian)

  • 添加spinlock支持ARM64 (Mark Salter)

  • 为了Israel, Morocco, Palestine,Paraguay中DST变化规律的DST变化规律更新时间区域数据文件到tzdata版本2013d。 同时为Macquarie Island修正历史区域数据(Tom Lane)