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

# E.72. 版本8.4.17

> 发布日期: 2013-04-04

该发布包含8.4.16的各种修复。关于8.4主要发布的新功能的信息， 参阅第 E.89 节。

## E.72.1. 迁移到版本8.4.17

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

然而，该发布修正了GiST索引管理中的几个错误。 安装这个更新之后，对于`REINDEX`满足下面描述的一个或者多个条件的任何GiST索引是明智的。

同时，如果你从8.4.10更早版本更新，参阅第 E.79 节。

## E.72.2. 修改列表

- 在每个postmaster子进程中重置OpenSSL随机状态(Marko Kreen)

  这避免了这样一种情况，其中通过`contrib/pgcrypto`产生的随机值 可能对于另一个数据库用户相对容易。当postmaster可以配置`ssl` = `on`时， 该风险是唯一显著的，但是大多数连接不使用SSL加密。(CVE-2013-1900)

- 当它不适合这样做的时候，修复GiST索引不使用"模糊"几何比较(Alexander Korotkov)

  核心几何类型执行使用"模糊"平等比较，但是`gist_box_same` 必须执行精确比较，否则使用它的GiST索引可能变得不一致。 安装该更新之后，用户应该在`box`，`polygon`，`circle`或者`point`列上 `REINDEX`任何GiST索引。 因为所有这些使用`gist_box_same`。

- 修复不正确的范围并集以及 为了可变宽度数据类型使用 `contrib/btree_gist`的GiST索引中惩罚逻辑， 也就是`text`, `bytea`， `bit`和`numeric`列(Tom Lane)

  这些错误可能导致不一致索引， 其中一些出现的关键字不会被搜索发现， 并且在无用的索引膨胀中， 在安装此更新后建议用户`REINDEX`这种索引。

- 修复为多列索引在GiST页中分离代码的错误(Tom Lane)

  这些错误可能导致不一致索引， 其中一些出现的关键字不会被搜索发现， 并且在索引中是不必要的无效的搜索。 在安装此更新后建议用户 `REINDEX`多列GiST索引。

- 修复正则表达式编译中无限循环风险(Tom Lane,Don Porter)

- 修复正则表达式编译中潜在的空指针取消引用(Tom Lane)

- 修复`to_char()`在合适的地方使用ASCII大小写折叠规则(Tom Lane)

  这修复了应该区域独立的一些模板模式的不当操作， 但是在Turkish地区胡乱操作"`I`"和"`i`"。

- 修复时间戳`1999-12-31 24:00:00`的不必要拒绝(Tom Lane)

- 删除无效的"picksplit不支持二次分裂"日志消息(Josh Hansen, Tom Lane)

  该消息似乎被添加到从未写入的期望代码中， 并且可能从来不是，因为二次分裂的GiST的缺省处理 实际上相当好。 所以停止打扰关于它的最终用户。

- 修复发送会话的 最后几个事务提交/终止计数到统计收集器的可能错误(Tom Lane)

- 消除PL/Perl的`spi_prepare()`函数中内存泄露(Alex Hunsaker, Tom Lane)

- 修复pg_dumpall以 正确处理包含"`=`"的数据库名字(Heikki Linnakangas)

- 当给定一个不正确连接字符串时，避免pg_dump崩溃(Heikki Linnakangas)

- 忽略pg_dump中无效索引(Michael Paquier)

  备份无效索引可能导致恢复时间的问题， 比如如果索引创建失败的原因是它试图强制 不满足表的数据的唯一性条件。同时，如果索引创建实际上仍然在进行中， 认为它是一个不受约束的DDL变化似乎是合理的，其中pg_dump 不期望备份。

- 修复`contrib/pg_trgm`的`similarity()` 函数为少于三个的字符串返回零(Tom Lane)

  以前它返回`NaN`由于内部除以零。

- 为了Chile, Haiti, Morocco, Paraguay和一些Russian区域中DST变化规律更 新时间区域数据文件到tzdata发布2013b。 同时为更多地方修正历史区域数据。

  另外，在Russia和其他地方更新最近变化的时区缩写文件：`CHOT`, `GET`, `IRKT`, `KGT`, `KRAT`, `MAGT`, `MAWT`, `MSK`, `NOVT`, `OMST`, `TKT`, `VLAT`, `WST`, `YAKT`, `YEKT`现在遵从它们当前意义，并且 `VOLT` (Europe/Volgograd)和`MIST` (Antarctica/Macquarie)被添加到缺省缩写列表中。

上一页 | 起始页 | 下一页
版本8.4.18 | 上一级 | 版本8.4.16