pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
2008-09-22
本次发布包含对 8.3.3 的多方面修复。有关 8.3 大版本中新特性的信息,请参见 第 E.96 节。.
对于运行 8.3.X 的用户,不需要进行转储/恢复。不过,如果你是从早于 8.3.1 的版本升级,请参阅 第 E.95 节。
修复 btree WAL 恢复代码中的缺陷(Heikki)
如果 WAL 在页分裂操作中途结束,恢复就会失败。
修复 HOT 页修剪可能使用错误截断 XID 的问题(Alvaro)
此错误在 VACUUM 会查询的系统目录中造成损坏风险:死元组版本可能被过早移除。这对实际数据库操作的影响很小,因为系统在检查目录时不遵循 MVCC 规则,但可能导致 pg_dump 或其他客户端程序的瞬时错误输出。
修复 datfrozenxid 可能的错误计算(Alvaro)
此错误或许能解释最近一些无法删除旧 pg_clog 数据的报告。
修复 pg_class 被重新索引后的错误 HOT 更新(Tom)
如果 REINDEX TABLE pg_class 之后在同一会话中执行 ALTER TABLE RENAME 或 ALTER TABLE SET SCHEMA 命令,pg_class 可能损坏。
修复遗漏的“组合 cid”情形(Karl Schnaitter)
此错误使行对某个事务错误地不可见,而这些行在该事务中曾被多个全部中止的子事务删除过。
防止 autovacuum 在它正在检查的表恰好在错误时刻被删除时崩溃(Alvaro)
把本地锁计数器从 32 位拓宽到 64 位(Tom)
这是针对计数器在足够长的事务中可能溢出的报告,该溢出会导致意外的 “锁已被持有”错误。
修复 GiST 索引扫描期间可能的元组重复输出(Teodor)
当任一表被修改时从头重新生成外键检查查询(Tom)
此前 8.3 会试图重新规划查询,但基于以前生成的查询文本。如果表或列被重命名,这就会失败。
修复视图包含简单 UNION ALL 构造时遗漏的权限检查(Heikki)
被引用表的权限被正确检查,但视图本身的权限没有。
在执行器启动时添加检查,确保 INSERT 或 UPDATE 产生的元组与目标表的当前行类型匹配(Tom)
据信这种情况在 8.3 中不可能发生,但在以前的版本中可能,因此检查似乎是明智的。
修复 DROP OWNED 期间可能的重复删除(Tom)
这通常会导致奇怪的错误,例如 “关系 NNN 的缓存查找失败”。
修复 XML 操作中的多个内存泄漏(Kris Jurka、Tom)
修复 xmlserialize(),使其对不可接受的目标数据类型正确抛出错误(Tom)
修复几处在文本搜索配置文件解析中错误处理多字节字符的地方(Tom)
配置文件中出现的某些字符总是会导致 “编码的字节序列无效”失败。
为文本搜索配置文件中报告的所有错误提供文件名和行号位置(Tom)
修复 AT TIME ZONE:先尝试把时区参数解释为时区缩写,仅在失败时才尝试完整时区名,而不是像以前那样相反(Tom)
时间戳输入函数一直按此顺序解析有歧义的时区名。让 AT TIME ZONE 也这样做改进了一致性,并修复了 8.1 中引入的兼容性缺陷:在有歧义的情形下,我们现在的行为与 8.0 及更早版本相同,因为在旧版本中 AT TIME ZONE 只接受缩写。
修复日期时间输入函数在 64 位平台上正确检测整数溢出(Tom)
防止显示带单位的配置参数时单位转换期间的整数溢出(Tom)
改进向 syslog 写很长日志消息的性能(Tom)
允许 pg_hba.conf 中 LDAP URL 的后缀部分包含空格(Tom)
修复 SELECT DISTINCT ON 查询上游标反向扫描的缺陷(Tom)
修复可能把 IS NULL 测试不当下推到外连接之下的规划器缺陷(Tom)
这由上层 OR 子句的所有分支中对同一关系的 IS NULL 测试触发。
修复嵌套子查询表达式的规划器缺陷(Tom)
如果外层子查询不直接依赖父查询而内层依赖,外层的值可能不会为新的父查询行重新计算。
修复规划器,使其估计产生布尔结果的 GROUP BY 表达式总是产生两个组,而不考虑表达式的内容(Tom)
对于某些布尔测试(如 col IS NULL),这比常规的 GROUP BY 估计准确得多。
修复 PL/pgSQL 在 FOR 循环的目标变量是包含组合类型字段的记录时不失败(Tom)
修复 PL/Tcl 在 Tcl 8.5 下的正确行为,并更小心地处理发送到 Tcl 或从 Tcl 发出的数据的编码(Tom)
改进 PQescapeBytea() 的性能(Rudolf Leitgeb)
在 Windows 上,通过阻止 libpq 在每次系统调用中发送超过 64kB 来绕过 Microsoft 的一个缺陷(Magnus)
修复 ecpg 在 SET 命令中正确处理变量(Michael)
改进 pg_dump 和 pg_restore 在发送 SQL 命令失败后的错误报告(Tom)
修复 pg_ctl,使其在 restart 期间正确保留 postmaster 命令行参数(Bruce)
修复 pg_standby 中 WAL 文件截断点计算的错误(Simon)
更新时区数据文件到 tzdata 发行版 2008f(针对阿根廷、巴哈马、巴西、毛里求斯、摩洛哥、巴基斯坦、巴勒斯坦和巴拉圭的 DST 法规变更)
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。