E.131. 发布8.3.14
发布日期: 2011-01-31
该发布包含来自8.3.13中各种修复。关于8.3主要发布中新特性信息, 参阅第 E.145 节。
E.131.1. 迁移到版本8.3.14
运行8.3.X不需要备份/恢复。然而,如果从8.3.8更早版本更新, 参阅8.3.8发布说明。
E.131.2. 变化
-
当EXPLAIN尝试显示简单形式CASE表达式的时候, 避免错误(Tom Lane)
如果CASE的测试表达式是一个常量,那么规划器可以简化 CASE到迷惑表达式显示代码的一种形式中, 导致"意外CASE WHEN子句"错误。
-
修复下标现有范围之前数组片段的分配(Tom Lane)
如果在新添加的下标和最初预先存在的下标之间有间隙, 那么代码误算需要从旧数组空位图中拷贝多少项, 有可能导致数据损坏或崩溃。
-
避免规划遥远日期值中意外转换溢出(Tom Lane)
date类型支持比timestamp类型表示的更广泛的日期, 但规划器假定它可能总是转换日期到timestamp。
-
当standard_conforming_strings是on的时候, 修复大对象(BLOBs)pg_restore的文本输出(Tom Lane)
虽然直接恢复到数据库正常执行,如果pg_restore被要求 SQL文本输出并且源数据库中已经启用standard_conforming_strings, 那么字符串逃避是不正确的。
-
修复包含... & !(subexpression) | ...的tsquery值 的错误解析(Tom Lane)
不能正确执行包含操作符合并的查询。contrib/intarray的 query_int类型和contrib/ltree的 ltxtquery类型中存在同样的错误。
-
为query_int类型修复contrib/intarray的输入函数中的缓冲区溢出(Apple)
该错误是一个安全风险,因为函数的返回地址可能被重写。感谢Apple Inc的安全团队报告这个问题 并且提供修复(CVE-2010-4015)
-
修复contrib/seg的GiST picksplit算法错误(Alexander Korotkov)
这可能导致效率低下,尽管不是真的错误答案,在seg列的GiST索引中。 如果你有一个索引,在安装这个更新之后考虑REINDEX它。 (这与之前更新中contrib/cube中修复的错误是一样的)