PostgreSQL 9.6.1,9.5.5,9.4.10,9.3.15,9.2.19和9.1.24发布!

PostgreSQL 9.6.1,9.5.5,9.4.10,9.3.15,9.2.19和9.1.24发布!

大家好,又见面了,我是全栈君。

##### 翻译:亭亭小次郎@飞象

英文链接

PostgreSQL全球开发组在2016-10-27日 发布了PostgreSQL数据库系统中所有支持版本的更新, 包括9.6.1,9.5.5,9.4.10,9.3.15,9.2.19和9.1.24。 这也是PostgreSQL 9.1系列的最后一次更新, 因为它现在结束维护生命周期。 此版本修复了两个可能导致数据损坏的问题,下 面将对此进行更详细的介绍。

它还补丁了过去三个月中报告的一些其他错误。 该项目敦促用户在下次可能的停机时间应用此更新。

截断关系的WAL日志记录

在此版本之前,存在一个可能遇到的问题, PostgreSQL实例将尝试访问不再存在于磁盘上的数据。 如果可用空间映射未更新以了解截断, 则 PostgreSQL 数据库可能返回已被截断的页面, 并产生如下错误:

ERROR:  could not read block 28991 in file "base/16390/572026": read only 0 of 8192 bytes

如果启用校验和,则还会出现可见性映射中的校验和故障。

这个问题存在于 PostgreSQL 的9.3,9.4,9.5和9.6系列的版本中。

pg_upgrade在大端机器上的问题

在大端机器(例如许多非Intel CPU架构)上,pg\_upgrade不正确地写入可见性映射的字节, 导致 pg\_upgrade无法完成。

如果你使用的是big-endian机器(许多非Intel架构都是big-endian) 并且使用pg_upgrade从9.6之前的版本升级, 你应该假定所有的可见性映射都不正确,需要重新生成。 使用 contrib/pg_visibilitypg_truncate_visibility_map() 函数截断每个关系的可见性映射就行了。 请阅读更新部分, 查阅文章末尾提到的安装说明, 可以了解相关在PostgreSQL实例上解决此问题的方法。

这个问题只存在于PostgreSQL 9.6.0版本中。

Bug修复和相关改进

除了上述,此更新还修复了在过去几个月中报告的一些错误。 其中一些问题只影响9.6系列,但许多问题影响所有社区支持的版本。 此版本更新超过了50个修订,包括:

  • 修复使用 DISTINCT 执行聚合函数时的后用后危险,这可能导致崩溃
  • 修复了用作窗口函数的多态聚合的不正确处理,这可能导致崩溃
  • 修复在big-endian机器上不正确创建GIN索引的WAL记录
  • 修复在截断大于1GB的临时表时, 文件描述符泄漏
  • 修复拥有PRIMARY KEY或REPLICA IDENTITY索引的表, 批量UPDATE时,查询内存泄漏
  • 修复SELECT FOR UPDATE/SHARE, 以正确锁定由后续中止的事务更新的元组
  • 使用已启用行级安全性的表中的列名列表修复COPY
  • 修复删除推测性插入的TOAST元组时退出 INSERT … ON CONFLICT
  • 修复VACUUM等待排它表锁定时的超时长度,以便它可以截断表
  • 在创建或更改表时修复合并中的错误继承的CHECK约束
  • 修复jsonb_set()中数组元素的替换的bug
  • 修复在btree索引中中止使用缩写键时可能出现的排序错误
  • 在Windows上,在访问被拒绝错误后,重试创建动态共享内存控制段
  • 修复 pgbench 的平均延迟计算
  • 使pg_receivexlog 使用参数 –synchronous无插槽时正确执行
  • 使pg_rewind在源服务器上的会话中关闭synchronous_commit
  • 不要尝试在libpq中的多个连接之间共享SSL上下文
  • 支持OpenSSL 1.1.0
  • 添加了TAP测试基础组件,使其可用于扩展模块的测试
  • 逻辑WAL解码和复制槽的几个修复
  • 在pg_dump,pg_xlogdump和pg_upgrade中存在的几个小问题的修复
  • 对查询计划器和EXPLAIN输出中的小问题的几个修复
  • 时区支持的几个修复

此更新还包含tzdata版本2016h为巴勒斯坦和土耳其的DST法律变化, 加上土耳其和俄罗斯一些地区的历史修正。 在南极洲,前苏联,斯里兰卡,切换到某些时区的数字缩写的问题。

IANA时区数据库中,以前为所有时区提供了缩写文本, 即使当地人口中几乎没有或没有货币的缩写。 他们正在改变这一策略, 倾向于在没有实际使用英语缩写的证据的区域中使用数字UTC偏移。 至少暂时,PostgreSQL将继续接受这样删除的缩写的时间戳输入。 但它们不会显示在pg_timezone_names视图中,也不用于输出。

在此更新中,AMT不再显示为正在使用中的亚美尼亚时间。 因此,我们更改了默认缩写集以将其解释为Amazon Time, 因此使用UTC-4而不是 UTC+4

9.1版本维护终结,以及注意事项

PostgreSQL版本9.1现在是End-of-Life(EOL)。

此版本的社区不会发布其他内容的更新或安全修补程序。 但仍然要求9.1的用户尽快升级。 相关详细信息, 请参阅我们的 版本控制策略

##更新

所有PostgreSQL更新版本都是累积的。 与其他次要版本一样,用户不需要转储和重新加载其数据库, 或使用pg_upgrade应用此更新版本; 你可以简单地关闭PostgreSQL数据库,并更新其二进制文件实现更新。

如果你的系统受到大端系统pg_upgrade错误的影响, 请阅读可见性映射问题, 并按照说明,解决你的PostgreSQL实例上的这个问题。

跳过一个或多个更新版本的用户可能需要运行其他更新后步骤; 有关详细信息,请参阅早期版本的发行说明。

转载于:https://my.oschina.net/innovation/blog/777059

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108818.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • C# TextBox输入密码显示星号(*)

    C# TextBox输入密码显示星号(*)在textBox上右键属性在行为-passwordChar后输入*

  • Redis客户端工具_redis安装教程

    Redis客户端工具_redis安装教程作者:IT邦德中国DBA联盟(ACDU)成员,目前从事DBA及程序编程(Web\java\Python)工作,主要服务于生产制造现拥有Oracle11gOCP/OCM、Mysql、Oceanbase(OBCA)认证分布式TBase\TDSQL数据库、国产达梦数据库以及红帽子认证从业8年DBA工作,在数据库领域有丰富的经验B站主播Oracle、Mysql、PG实战课程,请搜索:jeames007前言RedisDesktopManager官方版是一款简单快速、跨平台的Redi

  • cuda包卸载_之前安装过cuda卸载不彻底

    cuda包卸载_之前安装过cuda卸载不彻底不小心把/usr/local/cuda删除了,卸载cuda后安装cuda后/usr/local下没有cuda文件夹.运行:sudoapt-getautoremove–purgecuda

  • P3P解决cookie跨域

    P3P解决cookie跨域P3P是什么P3P(PlatformforPrivacyPreferences)是W3C公布的一项隐私保护推荐标准,以为用户提供隐私保护。 P3P标准的构想是:Web站点的隐私策略应该告之访问者该站点所收集的信息类型、信息将提供给哪些人、信息将被保留多少时间及其使用信息的方式,如站点应做诸如“本网站将监测您所访问的页面以提高站点的使用率”或“本网站将尽可能为您提供更合适的广告”等

  • Tomcat启动一闪而过就消失的原因和解决方法

    Tomcat启动一闪而过就消失的原因和解决方法Tomcat启动一闪而过怎么办?这成为了许多刚接触tomcat开发环境工作者的一个大问题,许多用户朋友都不知道是因为什么问题导致出现这种情况,下面就一起来了解一下吧。原因一: (1)首先要搞明白启动不起来的原因。方法是在命令行下,运行startup.bat文件,这样程序就不会一闪而过,而会将启动不起来的原因打印到窗口上。(2)在命令行下启动tomcat的方法读者应该都很清楚,大体就是:cmd启动命…

  • from django.db import models_django请求响应流程图

    from django.db import models_django请求响应流程图前言APIView中的dispatch是整个请求生命过程的核心方法,包含了请求模块,权限验证,异常模块和响应模块,我们先来介绍请求模块请求模块:request对象源码入口APIView类中di

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号