PostgreSQL 9.4.4 中文手册
上一页 | 上一级 | 附录 E. 版本说明 | 下一页

# E.104. 发布8.3.9

> 发布日期: 2009-12-14

该发布包含来自8.3.8各种修复。关于8.3主要发布中新特性信息， 参阅第 E.113 节。

## E.104.1. 迁移到版本8.3.9

运行8.3.X不需要备份/恢复。然而，如果从8.3.8更早版本更新， 参阅8.3.8发布说明。

## E.104.2. 变化

- 保护由索引函数导致的间接安全威胁改变会话本地状态(Gurjeet Singh, Tom)

  这个变化阻止不可改变的索引函数可能破坏超级用户会话(CVE-2009-4136)。

- 拒绝在普通名字(CN)字段中包含嵌入空字段的SSL证书(Magnus)

  这可以防止SSL验证期间证书意外匹配到服务器或者客户端名称(CVE-2009-4034)。

- 在后台启动时缓存初始化期间修复可能崩溃(Tom)

- 避免空的同义词词典崩溃(Tom)

- 防止在不安全时期信号中断`VACUUM`(Alvaro)

  它已经提交元组操作之后，如果`VACUUM FULL`被取消，那么该修复程序阻止了PANIC， 并且如果有一个普通的`VACUUM`在截断该表之后被中断，那么抛出瞬态错误。

- 由于哈希表大小计算中整数溢出，修复可能崩溃(Tom)

  这可能会产生对散列结果大小非常大的规划器估计。

- 修复`inet`/`cidr`比较中罕见崩溃(Chris Mikkelson)

- 确保通过预备事务持有的共享元组级别锁被忽略(Heikki)

- 修复用于子事务中被访问的游标的临时文件的过早删除(Heikki)

- 当循环到一个新的CSV日志文件的时候，修复syslogger进程中内存泄露(Tom)

- 修复Windows许可降级逻辑(Jesse Morris)

  这修复了数据库在Windows上启动失败的一些情况，通常带有误导性错误消息比如 "没有找到匹配的postgres可执行文件"。

- 当分裂取决于索引非第一列的时候，修复GiST索引页分裂不正确逻辑(Paul Ramsey)

- 如果在检查点结尾回收利用或者删除旧的WAL文件失败，不要出错误(Heikki)

  更好地将这个问题看作是非致命性的，并且允许检查点来完成。 未来检查点将重新尝试删除。这些问题预计不会在正常操作中， 但都被认为通过错误设计的Windows杀毒和备份软件造成的。

- 确保Windows上WAL文件不要反复被存档(Heikki)

  如果一些其他进程干扰不再需要文件的删除，那么可能发生另外一种现象。

- 修复PAM密码处理更加具有鲁棒性(Tom)

  之前代码伴随Linux`pam_krb5` PAM模块和Microsoft Active Directory结合为 域控制器而失败，它可能在其他地方有问题， 因为它采取不合理的假设关于PAM堆栈可能会 传递给它什么参数。

- 在GSSAPI和SSPI认证方法中提高最大认证令牌（Kerberos标签）大小(Ian Turner)

  当旧的2000字节限制对于Unix Kerberos实现足够的时候， 通过Windows域控制器发出的标签更大。

- 重启序列访问统计收集(Akira Kurosawa)

  这用于执行但在8.3中被损坏。

- 修复`CREATE OR REPLACE FUNCTION`期间所有依赖关系的处理(Tom)

- 修复`WHERE` `x`=`x`条件的错误处理(Tom)

  在某些情况下这可能作为多余的被忽略，但是它们不是— 它们等同于`x` `IS NOT NULL`。

- 使得文本搜索解析器可以接受XML属性中下划线(Peter)

- 修复`xml`二进制输入中编码处理(Heikki)

  如果XML头不指定编码，我们假设缺省UTF-8；之前处理是不一致的。

- 修复从`plperlu`调用`plperl`错误或者反之亦然(Tom)

  从内部函数的错误退出可能会导致崩溃，由于外部函数未能重新选择正确的Perl解释器。

- 当重新定义PL/Perl函数的时候，修复会话存在期内存泄露(Tom)

- 当通过集合返回PL/Perl函数的时候，确保Perl数组被正确转换为PostgreSQL数组(Andrew Dunstan, Abhijit Menon-Sen)

  为非设置返回返回正确执行。

- 修复PL/Python中异常处理中罕见崩溃(Peter)

- 在`contrib/pg_standby`中，禁用Windows上带有信号的触发器故障转移(Fujii Masao)

  这从来没有任何有用的，因为Windows不具备Unix风格信号，但最近发生的变化使它真正崩溃。

- 确保psql的flex模块与正确的系统头定义一起被编译(Tom)

  这修复了平台上编译错误，该平台上`--enable-largefile`导致产生代码中 不兼容变化。

- 使postmaster忽略连接请求数据包中任何`application_name`参数， 以提高未来libpq版本的兼容性(Tom)

- 更新时区缩写文件以匹配当前情况(Joachim Wieland)

  这包含添加`IDT`和`SGT`到缺省时区缩写集合。

- 为了Antarctica, Argentina, Bangladesh, Fiji,Novokuznetsk, Pakistan, Palestine, Samoa, Syria中DST变化更新时区数据文件到tzdata发布2009s； 同时为了Hong Kong历史修正。

上一页 | 起始页 | 下一页
发布8.3.10 | 上一级 | 发布8.3.8