E.136. 版本8.4.18

E.136.1. 迁移到8.4.18
E.136.2. 变化

发布日期:. 2013-10-10

该发布包含8.4.17的各种修复。关于8.4主要版本的新功能信息, 参阅第 E.154 节

E.136.1. 迁移到8.4.18

运行8.4.X不需要备份/恢复。

如果你从8.4.17的更早版本中升级, 参阅第 E.137 节的发布说明。

E.136.2. 变化

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

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

  • 修复通过lo_open()故障导致的内存泄露(Heikki Linnakangas)

  • work_mem正使用超过24GB内存时, 修复内存过量使用错误(Stephen Frost)

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

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

    当估计计划成本时,以前的测试像col IS NOT TRUEcol IS NOT FALSE没有正确把NULL值因素计算在内。

  • 防止下压WHERE子句到不安全UNION/INTERSECT子查询 (Tom Lane)

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

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

  • 改善视图转储代码对引用表中已删除字段的处理 (Tom Lane)

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

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

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

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

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

  • 防止CREATE FUNCTION检查SET变量 除非启用函数体检查(Tom Lane)

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

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

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

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

    C99标准允许的拼写是inf+inf-infinfinity+infinity-infinity。 确保我们认识它们,即使平台的strtod不认识。

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

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