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

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

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

E.137. 版本 8.3.10 #

发行日期:. 2010-03-15

本次发布包含对 8.3.9 的多方面修复。有关 8.3 大版本中新特性的信息,请参见 第 E.147 节。.

E.137.1. 迁移到版本 8.3.10

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

E.137.2. 变更

  • 新增配置参数 ssl_renegotiation_limit,控制对 SSL 连接进行会话密钥重协商的频率(Magnus)

    可以把它设为零以完全禁用重协商,这在使用有缺陷的 SSL 库时可能是必需的。特别是,某些厂商发布的 CVE-2009-3555 临时补丁会导致重协商尝试失败。

  • 修复后端启动期间可能的死锁(Tom)

  • 修复因未干净地处理 relcache 重载期间的错误而可能的崩溃(Tom)

  • 修复因使用指向缓存计划的悬空指针而可能的崩溃(Tatsuo)

  • 修复试图从子事务启动失败中恢复时可能的崩溃(Tom)

  • 修复与使用保存点以及客户端编码不同于服务器编码相关的服务器内存泄漏(Tom)

  • 修复 GIST 索引页分裂的恢复结束清理期间发出的不正确 WAL 数据(Yoichi Hirai)

    如果在完成未完成的 GIST 插入之后、在恢复结束清理期间崩溃,这会导致索引损坏,或者更可能在 WAL 重放期间出错。

  • bit 类型的 substring() 把任何负长度都视为字符串的其余全部(Tom)

    以前的编码只对 -1 这样处理,对其他负值会产生无效的结果值,可能导致崩溃(CVE-2010-0442)。

  • 修复整数到位串的转换:当输出位宽比给定整数宽出非 8 位倍数时,正确处理第一个小数字节(Tom Lane)

  • 修复若干病态缓慢的正则表达式匹配情形(Tom)

  • 修复 xml 处理中因草率内存管理导致的若干崩溃(Tom)

    这是最先应用于 8.4 的变更的向后移植。已知 8.3 代码有缺陷,但新代码差异足够大,在获得一些实际测试之前不想向后移植它。

  • 修复试图更新组合类型数组列中某元素的字段时的缺陷(Tom)

  • 修复备份历史文件中的 STOP WAL LOCATION 条目:当结束位置恰好位于段边界时报告下一个 WAL 段的名称(Itagaki Takahiro)

  • 修复更多临时文件泄漏的情形(Heikki)

    这纠正了上一个小版本中引入的问题。失败的一种情形是返回集合的 plpgsql 函数在另一个函数的异常处理器中被调用。

  • 改进布尔变量情形的约束排除处理,特别是使排除带有 bool_column = false 约束的分区成为可能(Tom)

  • 读取 pg_hba.conf 及相关文件时,如果 @ 出现在引号内,不要把 @something 当作文件包含请求;另外,永远不要把单独的 @ 当作文件包含请求(Tom)

    这防止了角色名或数据库名以 @ 开头时的古怪行为。如果需要包含路径名包含空格的文件,仍然可以做到,但必须写 @"/path to/file" 而不是把引号放在整个构造之外。

  • 防止在某些平台上把目录命名为 pg_hba.conf 及相关文件中的包含目标时出现无限循环(Tom)

  • 修复 SSL_readSSL_write 失败而未设置 errno 时可能的无限循环(Tom)

    据报道这在某些 Windows 版本的 openssl 上可能发生。

  • 不允许在本地连接上使用 GSSAPI 认证,因为它需要主机名才能正确工作(Magnus)

  • ecpg 在连接消失时报告正确的 SQLSTATE(Michael)

  • 修复 psqlnumericlocale 选项,使其不在 latex 和 troff 输出格式中格式化不应格式化的字符串(Heikki)

  • 当同时指定 ON_ERROR_STOP--single-transaction 且隐含的 COMMIT 期间发生错误时,让 psql 返回正确的退出状态(3)(Bruce)

  • 修复组合列被设为 NULL 的一种情形下 plpgsql 的失败(Tom)

  • 修复从 PL/PerlU 调用 PL/Perl 函数或相反时可能的失败(Tim Bunce)

  • 在 PL/Python 中添加 volatile 标记,以避免可能的编译器特定错误行为(Zdenek Kotala)

  • 确保 PL/Tcl 完全初始化 Tcl 解释器(Tom)

    此疏漏唯一已知的症状是使用 Tcl 8.5 或更高版本时 Tcl 的 clock 命令行为异常。

  • 防止在向 dblink_build_sql_* 函数指定过多键列时 contrib/dblink 崩溃(Rushabh Lathia、Joe Conway)

  • 允许 contrib/ltree 操作中使用零维数组(Tom)

    这种情形此前被作为错误拒绝,但把它与零元素数组同样处理更方便。特别是,这避免了当 ltree 操作应用于 ARRAY(SELECT ...) 的结果而子查询不返回行时不必要的失败。

  • 修复 contrib/xml2 中因草率内存管理导致的若干崩溃(Tom)

  • contrib/xml2 在 Windows 上的构建更健壮(Andrew)

  • 修复 Windows 信号处理中的竞态条件(Radu Ilie)

    此缺陷的一个已知症状是 pg_listener 中的行可能在重负载下被丢弃。

  • 把时区数据文件更新为 tzdata 版本 2010e for DST law changes in Bangladesh, Chile, Fiji, Mexico, Paraguay, Samoa。

提交更正

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