pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
2013-02-07
本次发布包含对 9.0.11 的多方面修复。有关 9.0 大版本中新特性的信息,请参见 第 E.49 节。.
防止从 SQL 执行 enum_recv(Tom Lane)
该函数声明有误,允许一条简单的 SQL 命令使服务器崩溃。原则上攻击者可能利用它检查服务器内存的内容。感谢 Sumit Soni(通过 Secunia SVCRP)报告此问题。(CVE-2013-0255)
修复 WAL 重放期间检测何时达到一致数据库状态的多个问题(Fujii Masao、Heikki Linnakangas、Simon Riggs、Andres Freund)
在截断关系文件时更新最小恢复点(Heikki Linnakangas)
数据一旦被丢弃,在时间线上更早的点停止恢复就不再安全。
修复热备模式下缺失的取消操作(Noah Misch、Simon Riggs)
取消冲突热备查询的需要有时会被遗漏,使这些查询看到不一致的数据。
修复 SQL 文法,允许对子 SELECT 结果做下标或字段选择(Tom Lane)
修复繁忙负载下自动清理截断的性能问题(Jan Wieck)
截断表末尾的空页需要排他锁,但自动清理被编码为在出现冲突锁请求时失败(并释放表锁)。在负载下,截断很可能永远不会发生,导致表膨胀。修复方法是先执行部分截断,释放锁,然后尝试重新获取锁并继续。此修复还大幅缩短了冲突请求到达后自动清理释放锁的平均时间。
防止扫描 pg_tablespace 时的竞态条件(Stephen Frost、Tom Lane)
如果 pg_tablespace 条目存在并发更新,CREATE DATABASE 和 DROP DATABASE 可能行为异常。
防止 DROP OWNED 试图删除整个数据库或表空间(Álvaro Herrera)
为安全起见,这些对象的所有权必须重新分配,而不是删除。
修复 vacuum_freeze_table_age 实现中的错误(Andres Freund)
在已存在超过 vacuum_freeze_min_age 个事务的安装中,这一失误使自动清理无法使用部分表扫描,而总是进行全表扫描。
防止 RowExpr 或 XmlExpr 被二次解析分析时的不当行为(Andres Freund、Tom Lane)
这一失误在 CREATE TABLE LIKE INCLUDING INDEXES 等上下文中可能被用户看到。
增强对哈希表大小计算中整数溢出的防御(Jeff Davis)
拒绝 to_date() 中超出范围的日期(Hitoshi Harada)
确保在 Windows 上非 ASCII 提示符字符串被转换到正确的代码页(Alexander Law、Noah Misch)
这一缺陷影响 psql 和其他一些客户端程序。
修复未连接数据库时 psql 的 \? 命令可能崩溃的问题(Meng Qingzhong)
修复 pg_upgrade,使其安全处理无效索引(Bruce Momjian)
修复 libpq 的 PQprintTuples 中的一字节缓冲区越界(Xi Wang)
这个古老的函数没有被 PostgreSQL 本身在任何地方使用,但仍可能被某些客户端代码使用。
让 ecpglib 正确使用翻译后的消息(Chen Huajun)
在 MSVC 上正确安装 ecpg_compat 和 pgtypes 库(Jiang Guiqing)
如果系统未提供 isinf(),则在 libecpg 中包含我们自己的版本(Jiang Guiqing)
重新排列 configure 对系统提供函数的测试,使其不被 libedit/libreadline 的虚假导出所欺骗(Christoph Berg)
确保 Windows 构建号随时间递增(Magnus Hagander)
让 pgxs 在为 Windows 交叉编译时以正确的 .exe 后缀构建可执行文件(Zoltan Boszormenyi)
新增时区缩写 FET(Tom Lane)
它现在用于一些东欧时区。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。