发布8.3.19

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

# E.94. 发布8.3.19

> 发布日期: 2012-06-04

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

## E.94.1. 迁移到版本8.3.19

运行8.3.X不需要备份/恢复。

然而，如果从8.3.17更早版本更新，参阅8.3.17发布说明。

## E.94.2. 变化

- 修复`contrib/pgcrypto`的DES `crypt()`函数中 不正确密码转换(Solar Designer)

  如果密码字符串包含字节值`0x80`， 密码的剩余部分被忽略，从而导致该密码比它出现的更弱。 有了该修复，字符串的其余部分被正确包含在DES哈希中。 任何受此漏洞影响的存储密码值将因此不再匹配， 所以存储的值可能需要被更新。

- 为程序语言的调用处理器忽略`SECURITY DEFINER`和`SET`属性(Tom Lane)

  将这些属性应用到调用处理器可能使服务器崩溃(CVE-2012-2655)

- 允许`timestamp`输入中数字时区偏移量达到距离UTC 16小时(Tom Lane)

  一些历史时区偏移量超出之前限制15小时。这可能导致重载期间备份数据值被拒绝。

- 当给定时间恰好是当前时区最后DST过渡时间时，修复时间戳转换处理(Tom Lane)

  这种监督已经很长时间了，但是之前没有注意到，因为大部分DST使用区域被假定具有 未来DST转换的无限序列。

- 修复`text`到`name`以及`char`到`name`映射 用来在多字节编码中正确执行字符串截断(Karl Schnaitter)

- 修复`to_tsquery()`中内存拷贝错误(Heikki Linnakangas)

- 当`pg_attribute`比较大的时候，修复缓慢会话启动(Tom Lane)

  如果`pg_attribute`超出`shared_buffers`的四分之一， 在会话启动期间需要缓存重建代码可能触发同步扫描逻辑。 导致它需要比正常长好几倍的时间。如果立刻启动许多新会话，问题尤其严重。

- 确保顺序扫描合理检查查询取消(Merlin Moncure)

  包含非活跃元组的许多连续页扫描不会相应中断。

- 确保`PGSemaphoreLock()`的Windows实现在返回前清理 `ImmediateInterruptOK`(Tom Lane)

  该疏忽意味着在相同的查询之后收到的查询取消中断 可以在一个不安全的时刻被接受，具有不可预测性，但没有好的结果。

- 当输出视图或者规则的时候，安全显示整行变量(Abbas Butt, Tom Lane)

  涉及模糊名字（也就是说，这个名字可以是表或者查询的列名字）的情况以模糊方式被输出， 存在风险是视图或者规则在备份或者重载之后可能被不同地解释。 通过附加非空操作转换避免模糊情况。

- 确保autovacuum工作进程正确执行堆栈深度检查(Heikki Linnakangas)

  之前，通过自动`ANALYZE`激发的函数中无限递归可能使得 工作进程崩溃。

- 修复日志收集器使得在高负载下不会丢失日志一致性(Andrew Dunstan)

  如果它比较繁忙，该收集器之前可能无法重新分配大信息。

- 修复日志收集器以确保它在收到SIGHUP之后重启文件循环(Tom Lane)

- 当该目标是函数的第一个变量的时候， 修复PL/pgSQL的`GET DIAGNOSTICS`命令(Tom Lane)

- 当数据库包含多个对象的时候，修复pg_dump中若干个性能问题(Jeff Janes, Tom Lane)

  如果数据库包含许多模式，或者如果许多对象在依赖循环中，或者如果有许多拥有的序列， 那么pg_dump可能会很慢。

- 修复`contrib/dblink`的`dblink_exec()`而不泄露 临时数据库连接错误(Tom Lane)

- 为Antarctica, Armenia, Chile, Cuba, Falkland Islands, Gaza, Haiti, Hebron, Morocco, Syria和Tokelau Islands中DST变化更新 时区数据文件到tzdata发布2012c； 同时为Canada历史修正。

上一页 | 起始页 | 下一页
发布8.3.20 | 上一级 | 发布8.3.18