已发布PostgreSQL 12.3、11.8、10.13、9.6.18和9.5.22

2020-05-16 06:43:24

PostgreSQL全球开发小组已经发布了我们数据库系统所有受支持版本的更新,包括12.3、11.8、10.13、9.6.18和9.5.22。此版本修复了PostgreSQL服务器中发现的一个安全问题和过去三个月报告的超过75个错误。

受影响的版本:9.5-12。安全团队不测试不受支持的版本,但PostgreSQL 9.5之前的版本存在此问题。

PostgreSQL的Windows Installer调用系统提供的没有完全限定路径的可执行文件。安装程序加载的目录或当前工作目录中的可执行文件优先于预期的可执行文件。具有将文件添加到其中一个目录的权限的攻击者可以使用该安装程序的管理权限执行任意代码。

此更新还修复了过去几个月报告的超过75个错误。其中一些问题仅影响版本12,但也可能影响所有支持的版本。

对生成的列进行了多个修复,包括当生成的列的输出是表中物理列的精确副本时(例如,如果表达式调用了可以返回其自己输入的函数),可能会导致表中的数据崩溃或损坏。

ALTER TABLE的几个修复,包括确保将SET STORAGE指令传播到表的索引。

修复在另一个会话正在删除相同对象时使用DROP OWNSEN BY时可能出现的争用情况。

修复了将COLLATE应用于分区绑定表达式中的不可排序类型时发生的崩溃。

允许圆形类型的输入接受文档中指定的格式(x,y),r。

允许get_bit()和set_bit()函数在长度超过256MB的BYTEA字符串上不会失败。

避免在崩溃恢复期间过早回收WAL段,这可能会导致WAL段在存档之前被回收。

通过跳过不相关的时间线,避免在恢复期间尝试从归档存储中提取不存在的WAL文件。

修复同步备用管理中的几个争用条件,包括更改SYNCHRONIZY_STANDBY_NAMES设置时发生的一个争用情况。

GSSAPI支持的几个修复包括对使用GSSAPI加密时发生的内存泄漏的修复。

pg_dump的其他几个修复,包括转储关于RLS策略的注释和将事件触发器的恢复推迟到结束。

此更新还包含摩洛哥和加拿大育空地区DST法律更改的tzdata版本2020a,以及上海的历史更正。America/Godthab区域已重命名为America/Nuuk,以反映当前的英语用法;不过,旧名称仍可用作兼容链接。这还会更新initdb;的已知Windows时区名称列表,以包括最近添加的名称。

所有PostgreSQL更新版本都是累积性的。与其他次要版本一样,用户不需要转储和重新加载他们的数据库,也不需要使用PG_UPGRADE来应用此更新版本;您只需关闭PostgreSQL并更新其二进制文件即可。

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