recientemente PostgreSQL开发人员发布了修订版本9-12的发行版 新版本是12.2、11.7、10.12、9.6.17、9.5.21和9.4.26。 其中 最后 (9.4.26)是为9.4分支准备的最后一个更新。 9.5版的更新将在2021年9.6月之前完成,2021版的更新将在10年2022月之前,PostgreSQL 11的发布将在2023年12月之前,PostgreSQL 2024的发布将在XNUMX年XNUMX月之前,PostgreSQL XNUMX的更新直到XNUMX年XNUMX月。
随着新的纠正版本的发布 开发人员提到修复了75个错误并修复了漏洞(CVE-2020-1720) 由于在执行命令“ ALTER…DEPENDS ON EXTENSION”时缺少授权验证。
关于漏洞
在某些情况下, 该漏洞允许无特权的用户删除任何功能,过程,实例化视图,索引或触发器。 如果管理员安装了某些扩展程序,并且用户可以运行CREATE命令,或者可以说服扩展程序所有者运行DROP EXTENSION命令,则可能会发动攻击。
另外, 您会看到一个新的pgcat应用程序的外观,该应用程序允许在多个PostgreSQL服务器之间复制数据。 该程序通过在主服务器上执行的导致数据更改的SQL脚本的另一主机上转换和重放来支持逻辑复制。
其他变化
还突出了一些仅影响版本12的更改:
- 支持任何类型的目标表(视图,fdw(外部数据包装器),分段表,分布式citus表)。
- 能够重新定义表名(从一个表到另一个表的复制)。
- 通过仅传输本地更改来支持双向复制,而无需考虑来自外部的副本。
- 存在基于LWW(last-writer-win)算法的冲突解决系统。
- 将有关复制进度和未应用的副本的信息保存在单独的表中的功能,该功能可用于在暂时无法访问的接收节点恢复后进行还原。
Y 更正中,以下内容突出,其中大多数影响版本12 但它们也存在于某些以前的版本中:
- 修复了将外键约束添加到子分区表(又称为多级分区表)时的错误。 如果已经使用了此功能,则可以通过分离并重新附加受影响的分区,或者通过将外键约束拖放到主表中来解决。 您可以在ALTER TABLE文档中找到有关如何执行这些步骤的更多信息。
- CVE-2017-7484修复程序引入的分区表的已修复性能问题,该问题现在允许调度程序在查询包含泄漏运算符时使用子表的统计信息访问用户在父表中可以访问的列。
- 分区表的各种其他修复和更改,包括忽略返回伪类型的分区键表达式,例如RECORD。
- 修复了逻辑复制订阅服务器每列运行UPDATE触发器的问题。
- 修复了各种崩溃以及逻辑复制发布者和订阅者的崩溃。
- 使用REPLICA IDENTITY FULL提高了逻辑复制的效率。
- walsender流程的各种修复程序。
- 内部关系非常大的散列的性能得到改善。
- 并行查询计划的各种修复程序。
- 查询计划程序错误的多种修复,其中包括影响单行子查询联接的一种。
- 包括针对MCV扩展统计信息的多个修复程序,其中包括一个用于错误估计OR子句的修复程序。
- 提高了具有多个内核的CPU上的并行哈希结的效率。
如果您想进一步了解这些更正版本的发布, 您可以在中查看详细信息 以下链接。
关于更新 到与您所使用的版本相对应的新修正版本,则无需执行pg_upgrade, 您只需要更新安装的二进制文件即可。