发布日期:. 2008-09-22
这个版本包含各种自8.1.13以来的修复。关于8.1主版本的新特性信息, 请查看第 E.226 节。
运行8.1.X的用户不需要转储/恢复。不过,如果你是从一个早于8.1.2的版本升级而来, 那么请查看第 E.224 节。
放宽本地锁计数器从32到64位 (Tom)
这个响应报告了计数器会在足够长的事务中溢出,导致意外的“锁已被持有”错误。
修复GiST索引扫描期间可能的元组重复输出 (Teodor)
在执行器启动时添加检查,确保INSERT
或UPDATE
产生的元组将匹配目标表的当前行类型 (Tom)
ALTER COLUMN TYPE
,跟着以前缓存的计划的重新使用,
会产生这种类型的情形。检查保护了可能接着发生的数据损坏和/或崩溃。
修复AT TIME ZONE
,首先尝试解释他的时区参数为时区缩写,
如果失败,那么尝试它为完整时区名字,而不是和以前一样的其他绕开方式 (Tom)
时间戳输入函数总是以这个顺序解决模糊的时区名字。让AT TIME ZONE
也这样做提高了一致性,并且修复了一个在8.1中引进的兼容性bug:
在模糊情况下,我们现在的行为和8.0及以前的行为一致,
因为更老版本的AT TIME ZONE
只接受缩写。
修复日期时间输入函数,以在64位平台上运行时能正确的检测到整数溢出 (Tom)
提高写入非常长的日志消息到系统日志的性能 (Tom)
修复SELECT DISTINCT ON
查询上的游标向后扫描中的错误 (Tom)
修复嵌套子查询表达式的规划器bug (Tom)
如果外侧子查询与父查询没有直接依赖关系,但是内侧子查询有, 那么外侧的值可能不会为新的父查询行重新计算。
修复规划器估计GROUP BY
表达式产生的布尔结果总是在两个组中,
不管表达式的内容是什么 (Tom)
对于某些布尔测试像col
IS NULL
来说,
这比普通GROUP BY
估计明显更加准确。
当FOR
循环的目标变量是一个包含复合类型字段的记录时,
修复PL/pgSQL以不失败 (Tom)
修复PL/Tcl以与Tcl 8.5正确的行为,并且更加小心发送到或者来自Tcl的数据的编码 (Tom)
修复PL/Python以与Python 2.5一起工作
这是一个8.2开发周期期间所做的修复的移植。
改善未能发送一个SQL命令之后,pg_dump和 pg_restore的错误报告 (Tom)
修复pg_ctl跨过一个restart
时,
适当的保存主进程命令行参数 (Bruce)
更新时区数据文件的到tzdata版本2008f (因为DST规律在Argentina、Bahamas、Brazil、Mauritius, Morocco、Pakistan、 Palestine和Paraguay发生了改变)