E.52. 发布8.4.1
发布日期: 2009-09-09
该发布包含来自8.4中的各种修复。关于8.4主要发布中的新特性信息, 参阅Section E.53。
E.52.1. 迁移到版本8.4.1
运行8.4.X不需要备份/恢复。
E.52.2. 变化
在归档恢复结尾修复WAL页面头部初始化(Heikki)
这可能导致在后续归档恢复中处理WAL的错误。
修复"归档中不能产生新的WAL项"错误(Tom)
修复在崩溃后使得过期行可见的问题(Tom)
涉及页面状态位的错误可能在服务器崩溃后不能正确设置。
在安全定义函数中不允许
RESET ROLE
和RESET SESSION AUTHORIZATION
(Tom, Heikki)这包含了在之前补丁中漏掉的一种情况, 在安全定义函数中不允许
SET ROLE
和SET SESSION AUTHORIZATION
(参阅CVE-2007-6600)使得已经加载模块的
LOAD
成为非操作的(Tom)以前
LOAD
尝试卸载并且重新加载该模块,但是这不安全而且没有用处。使得窗口函数
PARTITION BY
和ORDER BY
项总是被解释为 简单表达式(Tom)在8.4.0中这些列表按照用于顶级
GROUP BY
和ORDER BY
列表规则被解析。 但是每个SQL标准是不正确的,并且可能导致循环。修复半连接规划中若干错误(Tom)
在
IN
或者EXISTS
与另外一个连接一起使用的情况中导致错误查询结果。修复引用外连接中子查询的整行处理(Tom)
例子为
SELECT COUNT(ss.*) FROM ... LEFT JOIN (SELECT ...) ss ON ...
。 这里,为空扩展连接行ss.*
被看作为ROW(NULL,NULL,...)
, 与简单空不一样,现在将它看作为简单空。修复Windows共享内存分配代码(Tsutomu Yamada, Magnus)
该错误导致经常报道的"不能附加到共享内存"错误信息。
修复本地处理plperl (Heikki)
当调用plperl函数的时候,导致数据损坏,该错误可能导致服务器的本地设置改变。
修复reloptions的处理以确保设置一个选项不强制为其它的缺省值(Itagaki Takahiro)
确保"fast shutdown"请求强制终止打开会话,即使"smart shutdown"已经 在进行中(Fujii Masao)
避免
GROUP BY
查询中array_agg()
的内存泄露(Tom)将
to_char(..., 'TH')
看作带有'HH'
/'HH12'
后缀的大写字母序列(Heikki)它曾作为
'th'
(小写字母)被处理。包含
time
和time with time zone
输出的EXTRACT(second)
和EXTRACT(milliseconds)
结果中的小数部分(Tom)一直为浮点datetime配置工作,但在整数datetime代码中被打断。
当
_x_
大于2百万并且整数datetime在使用中的时候, 修复INTERVAL '``_x_
ms'溢出(Alex Hunsaker)当处理索引扫描中toasted值得时候,优化性能(Tom)
这对PostGIS是特别有用的。
修复禁用
commit_delay
错误(Jeff Janes)如果以silent模式启用服务器,输出早期启用信息到
postmaster.log
中(Tom)以前丢弃这样的错误信息,导致调度困难。
删除翻译常见问题(Peter)
现在主要是在wiki上面。 主要的问题前段时间已经移到了wiki上。
如果
postgresql.conf
为空,那么修复pg_ctl 不陷入无限循环中(Jeff Davis)修复pg_dump的
--binary-upgrade
模式中的若干错误(Bruce, Tom)通过pg_migrator使用
pg_dump --binary-upgrade
。修复
contrib/xml2
的xslt_process()
以正确处理 最大数量参数(二十)(Tom)提高libpq代码的鲁棒性以恢复
COPY FROM STDIN
中错误(Tom)当安装两个库的时候,避免包含readline和editline头文件的冲突(Zdenek Kotala)
解决gcc错误,它导致一些平台上"浮点异常"而不是"以零做除数"(Tom)
为Bangladesh, Egypt, Mauritius中DST变化规律更新时区数据文件到tzdata发布2009l。