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

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

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

E.220. 版本 8.0.2 #

发行日期:. 2005-04-07

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

E.220.1. 迁移到版本 8.0.2

对于运行 8.0.* 的用户,不需要进行转储/恢复。此发行版更新了 PostgreSQL 库的主版本号,因此如果某些用户应用程序找不到正确编号的共享库,可能需要重新链接它们。

E.220.2. 变更

  • 递增所有接口库的主版本号(Bruce)

    这本应在 8.0.0 中完成。需要它才能使 7.4.X 版本的 PostgreSQL 客户端应用程序(如 psql)能与 8.0.X 应用程序在同一台机器上使用。这可能需要重新链接使用这些库的用户应用程序。

  • 新增仅 Windows 的 wal_sync_method 设置 fsync_writethrough(Magnus、Bruce)

    此设置使 PostgreSQL 在写 WAL 时穿透磁盘驱动器的任何写缓存。此行为以前称为 fsync,但因它在其他平台上的行为与 fsync 大不相同而被改名。

  • 在 Windows 上启用 wal_sync_methodopen_datasync 设置,并使其成为该平台的默认(Magnus、Bruce)

    由于默认不再是 fsync_writethrough,如果磁盘驱动器启用了写缓存,断电期间可能丢失数据。要在 Windows 上关闭写缓存,请在设备管理器中选择驱动器属性,然后选择策略

  • 新缓存管理算法 2Q 取代 ARC(Tom)

    这是为了避免 ARC 的一项待决美国专利。对某些负载,2Q 代码可能比 ARC 慢几个百分点。更好的缓存管理算法将出现在 8.1 中。

  • 规划器调整以改进新建表上的行为(Tom)

  • 允许 plpgsql 给初始为 NULL 的数组的元素赋值(Tom)

    此前数组会保持 NULL,但现在它变成单元素数组。主 SQL 引擎在 8.0 中已改为以这种方式处理空数组值的 UPDATE,但 plpgsql 中的类似情形被遗漏了。

  • 把 plpython 函数体中的 \r\n\r 转换为 \n(Michael Fuhr)

    这防止在 Windows 或 Mac 客户端上编写 plpython 代码时出现语法错误。

  • 允许 SPI 游标处理返回行的工具命令,如 EXPLAIN(Tom)

  • 修复 ALTER TABLE SET WITHOUT OIDS 之后 CLUSTER 的失败(Tom)

  • 降低 ALTER TABLE ADD COLUMN 的内存使用(Neil)

  • 修复 ALTER LANGUAGE RENAME(Tom)

  • 记录 pg_ctl 仅 Windows 的 registerunregister 选项(Magnus)

  • 确保后端关闭期间完成的操作被统计收集器计数

    这有望解决关于 pg_autovacuum 不够频繁地清理系统目录的报告——它没有被通知后端退出期间临时表删除导致的目录删除。

  • 把 Windows 上配置参数 log_destination 的默认改为 eventlog(Magnus)

    默认情况下,在 Windows 上运行的服务器现在将把日志输出发送到 Windows 事件记录器而不是标准错误。

  • 使 Kerberos 认证在 Windows 上工作(Magnus)

  • 允许没有 CREATEDB 权限标志的超级用户执行 ALTER DATABASE RENAME(Tom)

  • 修改 CREATEDROP DATABASE 的 WAL 日志条目,不指定绝对路径(Tom)

    这允许在数据库位置可能不同的另一台机器上做时间点恢复。注意 CREATE TABLESPACE 在这种情形下仍有风险。

  • 修复后端带着创建过表并对其打开游标的未决事务退出时的崩溃(Tom)

  • 修复 array_map(),使其能调用 PL 函数(Tom)

  • 若干 contrib/tsearch2contrib/btree_gist 修复(Teodor)

  • 修复某些平台上一些 contrib/pgcrypto 函数的崩溃(Marko Kreen)

  • 修复 contrib/intagg 在 64 位平台上的问题(Tom)

  • 修复 ecpg 解析 CREATE 语句的缺陷(Michael)

  • 绕过 powerpc 和 amd64 上的 gcc 缺陷,它导致 ecpg 中的问题(Christof Petig)

  • 当区域设置为 C 时不使用区域感知版本的 upper()lower()initcap()(Bruce)

    这使这些函数能在区域设置为 C 时对非 7 位数据报错的平台上工作。

  • 修复 quote_ident(),给匹配关键字的名称加引号(Tom)

  • 修复 to_date() 在同时使用 CCYY 字段时合理行事(Karel)

  • 防止 to_char(interval) 在给定零月 interval 时失败(Tom)

  • 修复 date_trunc('week') 返回错误星期的问题(Bruce)

    date_trunc('week') 在某些年份对一月的前几天返回错误的年份。

  • INET 数据类型的 D 类地址使用正确的默认掩码长度(Tom)

提交更正

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