选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 9.3 / 9.2 / 9.1 / 9.0
历史版本PostgreSQL 9.1 已于 2016 年 10 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页

E.141. 版本 8.1.3 #

发行日期

2006-02-14

此发行版包含 8.1.2 之后的多种修复,包括一个非常严重的安全问题。有关 8.1 主版本新特性的信息,请参阅 第 E.144 节

E.141.1. 迁移到版本 8.1.3

对于运行 8.1.X 的用户,不需要进行转储/恢复。不过,如果你是从早于 8.1.2 的版本升级,请参阅 第 E.142 节

E.141.2. 变更

  • 修复允许任何已登录用户把 SET ROLE 设为任何其他数据库用户 id 的缺陷(CVE-2006-0553)

    由于有效性检查不充分,用户可以利用 SET ROLE 通常在错误后用来恢复先前角色设置的特殊情形。这例如允许普通用户获得超级用户状态。权限提升风险只存在于 8.1.0-8.1.2。但在直到 7.3 的所有版本中,SET SESSION AUTHORIZATION 都有一个相关缺陷,如果服务器编译时启用了断言(这不是默认),非特权用户可使服务器崩溃。感谢 Akio Ishida 报告此问题。

  • 修复自插入行的行可见性逻辑缺陷(Tom)

    极少数情况下,当前命令插入的行可能被看作已经有效,而不应该如此。修复 8.0.4、7.4.9 和 7.3.11 版本中引入的缺陷。

  • 修复 pg_clog 和 pg_subtrans 文件创建期间可能导致文件已存在错误的竞态条件(Tom)

  • 修复缓存失效消息恰好在错误时刻到达时可能导致崩溃的情形(Tom)

  • 为预备语句中的 UNKNOWN 参数正确检查 DOMAIN 约束(Neil)

  • 确保 ALTER COLUMN TYPE 按正确顺序处理 FOREIGN KEYUNIQUEPRIMARY KEY 约束(Nakano Yoshihisa)

  • 修复以允许恢复有对自定义操作符或操作符类的跨模式引用的转储(Tom)

  • 允许 pg_restoreCOPY 失败后正确继续;此前它试图把剩余的 COPY 数据当作 SQL 命令(Stephen Frost)

  • 修复未指定数据目录时 pg_ctlunregister 崩溃(Magnus)

  • 修复 libpqPQprint HTML 标签(Christoph Zwerschke)

  • 修复 AMD64 和 PPC 上 ecpg 的崩溃(Neil)

  • 允许在函数结果类型声明中同时使用 SETOF%TYPE

  • 修复 PL/python 参数传递期间发生错误时的正确恢复(Neil)

  • 修复 plperl_return_next 的内存泄漏(Neil)

  • 修复 PL/perl 在 Win32 上对区域设置的处理以与后端匹配(Andrew)

  • 各种优化器修复(Tom)

  • 修复 Win32 上 postgresql.conflog_min_messages 设为 DEBUG3 或更高时的崩溃(Bruce)

  • 修复 Win32、Cygwin、OS X、AIX 的 pgxs -L 库路径指定(Bruce)

  • 在检查 Win32 管理员权限时检查 SID 是否启用(Magnus)

  • 正确拒绝超出范围的日期输入(Kris Jurka)

  • 修复 configure 期间测试 finiteisinf 存在性的可移植性问题(Tom)

  • 通过避免每数据行一次内核调用,改进经 libpq 的 COPY IN 速度(Alon Goldshuv)

  • 改进 /contrib/tsearch2 索引创建的速度(Tom)

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。