【New Release】PostgreSQL小版本(16.2, 15.6, 14.11, 13.14,12.18) 发布了

图片

前言

PostgreSQL遵循小版本的发布规律,这一个季度的小版本又发布了。可以算作是2024年第一个季度的版本发布。如果总结其规律:大概就是2月、5月、8月、11月的样子。通常因为11月配合大版本的发布,它是起点,也有可能就是终点。起点可能是*.0,也有可能是*.1 。于是你在标题里头,可以看到14.11这样的版本号。(正常情况,应该是14.8)。但是总体来说应该是每个季度一次小版本的发布更新。

详情介绍

1、重大安全补丁

CVE-2024-0985: PostgreSQL non-owner REFRESH MATERIALIZED VIEW CONCURRENTLY executes arbitrary SQL

CVSS v3 Base Score 分数达到8.0分。超过7/7.5分的,一般都属于高等级的安全问题了。基于此,那基本上这个升级就成了强制性需求了。

One step of a concurrent refresh command was run under weak security restrictions. If a materialized view's owner could persuade a superuser or other high-privileged user to perform a concurrent refresh on that view, the view's owner could control code executed with the privileges of the user running REFRESH. The fix for the vulnerability makes is so that all user-determined code is run as the view's owner, as expected.

The PostgreSQL project thanks Pedro Gallegos for reporting this problem.

所以有些同学问,什么时候需要做小版本升级,这里我可以有给出肯定的答复,遇到重大安全补丁的修复时,这类升级基本上就是强制型的升级了,基本上没有余地。

2、BUG修复及相关改进

此更新修复了过去几个月报告的超过65个错误。下面列出的问题会影响PostgreSQL 16。其中一些问题也可能影响其他受支持的PostgreSQL版本。

  • 修复在执行JIT内联时可能导致内存不足的内存泄漏。

  • 修复了查询规划器中的几个问题。

  • 在更新分区键列时,将MERGE行为与UPDATE保持一致,并跳过触发AFTER UPDATE ROW触发器和其他更新后的操作。

  • 修复在ALTER TEXT SEARCH CONFIGURATION … MAPPING命令中重复令牌名称的问题。

  • 修复DROP ROLE中角色名重复的问题。

  • 在DROP STATISTICS期间正确地锁定关联表,以防止在并发运行ANALYZE时出现错误。

  • 修复了生成和默认表达式的函数波动性(volatility)检查。

  • 在将现有索引与新的分区索引进行匹配时,确保排序规则完全匹配。

  • 避免子索引与分区索引上的REINDEX index同时并发进行删除时出现的错误。

  • 修复了清理GIN索引期间的加锁问题。对于这种情况,如果多个进程试图清理相同的GIN索引页,则有可能导致索引损坏。如果您认为您受到此问题的影响,请在安装此更新后重新索引您的GIN索引。

  • 避免分区SP-GiST索引出现失败。

  • 几个大对象的所有权问题的修复。

  • 在EXPLAIN (BUFFERS)中修改I/O计时统计(timing)数据“shared/local”的名称为“shared”。

  • 如果在执行期间或执行后不久发生系统崩溃,请确保CREATE DATABASE命令的持久性。

  • 在开始和结束从备份恢复时添加更多的日志记录消息。

  • 回退了一个使walreceiver进程在等待建立复制连接时对SIGTERM无响应的更改。

  • 对逻辑复制进行了几个修复。

  • 修复与OpenSSL 3.2的不兼容性。

  • 修正PL/pgSQL,以允许使用SQL标准函数体的CREATE FUNCTION/CREATE PROCEDURE SQL命令。

  • 修复了libpq管道模式下的错误处理。

  • 确保initdb总是取消对lc_*系列参数的postgresql.conf条目的注释。

  • 在pg_dump中,不再转储扩展成员对象的RLS策略或安全标签。

此版本还更新了时区数据文件到tzdata版本2024a,其中包括格陵兰、哈萨克斯坦和巴勒斯坦的夏令时法律变化,以及南极站Casey和Vostok的更正。还有越南、多伦多和密克隆岛的历史修正。

注意一项:如果使用GIN索引,则在更新到此版本后可能需要重新索引。

所以呢,小版本升级,也并不是说直接升级Binary文件就了事了。该读的文档还是要读一读的,以防止一些步骤的疏漏。

SAP BTP云中HyperScaler PG的自动升级

SAP BTP Cloud针对GCP, AWS, Azure甚至Ali中的PG做了自己的定制扩展,很多工作都是自动完成的。比如这次小版本升级,通过pipeline自动执行,结合生产环境中的Multi-AZ (HA的一种体现或增强体现),可以在1分钟以内完成自动切换,而不影响实际业务的运行。

当然这个Multi-AZ的节点切换过程,对DNS cache以及CF(Cloud Foundry)上的health-check时间响应也都是提出了一些要求。DNS Cache的过期时间,减至15秒(默认的很多环境都是30秒或以上)。health-check的频率及周期需要能覆盖住上边1分钟的边界。

小版本的自动升级确实能大大减轻DBA及相关团队的工作量。唯一升下的就是有效的监控……。最终的目的都是为了高质量的SLA。这才是客户需要的。

每年将有可能的维护时间(可能要停服一小段时间),全部节省下来,让给PostgreSQL的大版本升级。

参考:

https://www.postgresql.org/about/news/postgresql-162-156-1411-1314-and-1218-released-2807/:  https://www.postgresql.org/about/news/postgresql-162-156-1411-1314-and-1218-released-2807/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/542170.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

KKVIEW远程控制: 比TODESK好用的软件

比ToDesk更好用的软件:探索远程桌面工具的新选择 在数字化时代,远程桌面工具已经成为许多个人和企业用户不可或缺的一部分。这类工具使得用户可以从一个设备远程控制另一个设备,无论它们相隔多远。其中,ToDesk是一款广受欢迎的远…

微信小程序--开启下拉刷新页面

1、下拉刷新获取数据enablePullDownRefresh 开启下拉刷新: enablePullDownRefreshbooleanfalse是否开启当前页面下拉刷新 案例: 下拉刷新,获取新的列表数据,其实就是进行一次新的网络请求: 第一步:在.json文件中开…

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:ListItem)

用来展示列表具体item,必须配合List来使用。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。该组件的父组件只能是List或者ListItemGroup。 子组件 可以包含单个子组件。 接口 从API…

Elasticsearch:从 Java High Level Rest Client 切换到新的 Java API Client

作者:David Pilato 我经常在讨论中看到与 Java API 客户端使用相关的问题。 为此,我在 2019 年启动了一个 GitHub 存储库,以提供一些实际有效的代码示例并回答社区提出的问题。 从那时起,高级 Rest 客户端 (High Level Rest Clie…

一个能够自我游戏的贪吃蛇(pygame与搜索算法)

贪吃蛇小游戏再经典不过了,作为编程爱好者,代码编译的贪吃蛇,又能有怎样的成绩呢? 带着好奇,开始! 先做一个普通的贪吃蛇游戏 引入相关package import pygame 定义相关配置变量 # 定义字体 font pyg…

工匠的发展与兴衰趋势-机器人篇

这是一篇纯纯调侃的博客,如有雷同纯属意外。 之前,写过: 从2050回顾2020,职业规划与技术路径(节选) 从2050回顾2020,职业规划与技术路径(节选)补充 未来以“工”为主的…

MediaBox音视频终端SDK已适配鸿蒙星河版(HarmonyOS NEXT)

2024年1月,HarmonyOS NEXT 鸿蒙星河版系统开发者预览版开放申请,该系统将只能安装为鸿蒙开发的原生应用,而不再兼容安卓应用。对此,阿里云MediaBox音视频终端SDK产品已实现功能的鸿蒙化迁移和重构,全面适配鸿蒙系统Har…

SQLiteC/C++接口详细介绍之sqlite3类(八)

返回目录:SQLite—免费开源数据库系列文章目录 上一篇:SQLiteC/C接口详细介绍之sqlite3类(七) 下一篇: SQLiteC/C接口详细介绍之sqlite3类(八)(暂未发表) 24.sqlite3_cr…

FPGA静态时序分析与约束(二)、时序分析

系列文章目录 FPGA静态时序分析与约束(一)、理解亚稳态 FPGA静态时序分析与约束(三)、读懂vivado时序报告 文章目录 系列文章目录前言一、时序分析基本概念1.1 时钟抖动1.2 时钟偏斜1.3 时钟不确定性Uncertainty1.4 建立时间和保…

开启新能源新时代,未来金江能源计划港交版上市

近年来,随着人们对环保和可持续发展的关注日益增加,新能源行业迎来了蓬勃发展的机遇。作为楚雄州领先的新能源企业,楚雄州金江能源集团有限公司凭借其卓越的技术实力和丰富的项目经验,成功地实现了在资本市场的上市。金江能源集团成功在楚雄州股票交易所挂牌上市,成为该地区首家…

JVM高频面试点(一):Java类加载过程

1.概述 在 Java 中,类加载过程是指将 Java 类的字节码加载到内存中,并转换为 Java 虚拟机能够识别和执行的数据结构的过程。类加载是 Java 虚拟机执行 Java 程序的必要步骤之一,它负责加载程序中用到的类和接口。下图所示是 ClassLoader 加载…

Python读取Excel工作表数据写入CSV、XML、文本

Excel工作簿是常用的表格格式,许多数据呈现、数据分析和数据汇报都是以Excel工作表的形式进行。然而,在实际的数据管理、分析或自动化流程构建过程中,我们常常需要将这些Excel中的数据迁移至更其他数据系统,或者以文本形式存储以便…