PostgreSQL 9.6.0 手册
| |||
---|---|---|---|
上一页 | 上一级 | 附录 E. 版本说明 | 下一页 |
发布日期: 2013-12-05
这个版本包含各种自8.4.18以来的修复。关于8.4主版本的新特性信息, 请查看第 E.121 节。
运行8.4.X的用户不需要转储/恢复。
这个版本纠正了一个潜在的数据损坏问题。参阅下面的第一条修改日志项, 找出您的安装是否受到了影响,和如果受到了影响应该采取什么步骤。
另外,如果你是从早于8.4.17的版本升级而来,请参阅 第 E.104 节。
修复VACUUM的测试,查看它是否可以更新 relfrozenxid (Andres Freund)
在VACUUM(手动或自动)的某些情况下,会错误的增加一个表的 relfrozenxid值,允许元组逃离冻结,导致一旦过去2^31个事务, 这些行就变得不可见了。数据丢失的可能性要低的多,因为在数据真正的丢失之前, 需要多个不正确的进展,但也不是没有。从8.4.8或更早版本升级而来的用户没有受到影响, 但是所有随后的版本都包含了这个错误。
这个问题可以通过升级、在vacuum_freeze_table_age 设置为零的情况下清理所有数据库中的表来改善。这可以修复任何潜在的损坏, 但是不能修复所有已经存在的数据错误。不过,如果一个安装已经执行的更新事务少于2^31 (使用SELECT txid_current() < 2^31检查), 那么可以假设在执行清理之后该安装是安全的。
修复GIN索引发布树页面删除中的竞态条件 (Heikki Linnakangas)
这会导致短暂的错误回复或查询失败。
避免展开一个SELECT列表的子SELECT 中包含易变函数的查询 (Tom Lane)
这避免了由于额外的计算易变函数而导致意想不到的结果。
修复规划器对非简单变量子查询输出嵌套在外连接中的处理 (Tom Lane)
这个错误会导致对JOIN语法中包含多级别子查询的查询的错误规划。
修复过早删除临时文件 (Andres Freund)
修复规则输出中可能的读取过去的内存 (Peter Eisentraut)
修复int2vector和oidvector值的数组切片 (Tom Lane)
这种形式的表达式现在隐式的提升为正规的int2或 oid数组。
修复使用SQL标准、简单的GMT偏移时区时的错误行为 (Tom Lane)
在某些情况下,当系统应该使用常规的时区设置(在选择简单偏移之前它就盛行了)时,
系统使用了简单GMT偏移值。这个修改也导致timeofday
函数遵守简单GMT偏移时区。
阻止记录Windows错误代码的翻译时可能的错误行为 (Tom Lane)
正确的引用pg_ctl中生成的命令行 (Naoya Anzai and Tom Lane)
该修复仅适用于Windows。
修复pg_dumpall,使其在源数据库通过ALTER DATABASE SET 设置default_transaction_read_only 时也能工作 (Kevin Grittner)
以前,生成的脚本在恢复期间会失败。
修复ecpg对varchar声明的变量列表的处理 (Zoltán Böszörményi)
让contrib/lo防卫不正确的触发器定义 (Marc Cousin)
更新时区数据文件到tzdata版本2013h, 因为DST规律在Argentina、Brazil、Jordan、Libya、 Liechtenstein、Morocco和Palestine发生了改变。 还有,Indonesia的新的时区缩写WIB、WIT、WITA。