> Linux新闻 >

PostgreSQL 15.2、14.7、13.10、12.14 和 11.19 发布

PostgreSQL 全球开发组针对当前所有被支持版本发布了一次更新,版本包括:15.2、14.7、13.9、12.14、和 11.19。此版本修复了一个安全漏洞并修复了过去几个月报告的 60 多个 bug。

CVE-2022-41862:使用 Kerberos 连接到修改后的服务器时客户端内存泄露。

受影响的版本:12 - 15。

在建立 Kerberos 传输加密的过程中,一个经过修改的、未经认证的服务器或未经认证的中间人可以发送一个未终止的字符串。当 libpq 客户端应用程序有一个 Kerberos 凭据缓存,并且没有明确地禁用选项 gssencmode时,服务器可能会导致 libpq 过度读取并报告一个错误信息,其中包含来自其接收缓冲区及其后的未初始化字节。如果 libpq 的调用者以某种方式使攻击者能够访问该信息,这就实现了 over-read bytes 的泄露。官方表示,其目前还没有确认或排除安排崩溃或在披露的字节中存在明显的机密信息的攻击的可行性。

错误修复和改进
下面列出的问题影响 PostgreSQL 15,其中一些问题也可能影响其他支持的 PostgreSQL 版本。

如果 GENERATED 列在父表中不存在或子表生成的列与父表有不同的依赖关系,则修复分区表以正确更新子表中的 GENERATED 列。
MERGE命令的几个修复 。
允许 WITH RECURSIVE ... CYCLE 查询访问其 SET 输出列。
修复了在外部表上批量插入可能导致逻辑不一致的问题,例如,BEFORE ROW 触发器可能无法处理本应可用的行。
拒绝在 jsonpath存在性检查中使用未定义的变量 。
修复了直接来自表中 text 列的 jsonb subscripting。
在重新加载时遵循 checkpoint_completion_target 的更新值。
在 recovery_target_xid 模式中记录正确的结束时间戳。
修复了使用逻辑复制时允许列列表超过 100 的问题。
防止在 VACUUM末尾的 “wrong tuple length” 失败 。
使用 query pipelining 后避免在 ANALYZE之后立即提交 。
修复统计收集以在关系更改类型时正确处理(例如,表转换为视图)。
确保在执行短语匹配时可以取消全文搜索查询。
修复 DROP DATABASE逻辑复制 worker 进程之间的死锁。
修复 CREATE SUBSCRIPTION连接尝试失败时的 small session-lifespan 内存泄漏 。
提高了处理 SELECT 查询的启用 hot_standby的副本的性能。
逻辑解码的几个修复,提高了稳定性和臃肿处理。
修复默认逻辑复制插件 pgoutput,使其不发送未列在表的复制列列表中的列。
修复 pg_basebackup中非常大的 tablespace map 文件可能的损坏。
当 public schema 有一个非默认的所有者时,从 pg_dump的 --if-exists 模式中删除一个无害的警告。
修复 psql 命令 \sf 和 \ef 以处理具有 SQL 标准函数体的 SQL 语言函数(即 BEGIN ATOMIC)。
修复 ALTER FUNCTION/PROCEDURE/ROUTINE ... SET SCHEMA 的 tab 完成。
更新 pageinspect 扩展以将其 disk-accessing functions 标记为 PARALLEL RESTRICTED.
修复 seg扩展,使其在输入数字超过 127 位时不会崩溃或 print garbage。
此版本还将时区数据文件更新为 tzdata 版本 2022g,以适应格陵兰和墨西哥的 DST 法律变更,以及加拿大北部、哥伦比亚和新加坡的历史更正。值得注意的是,新时区 America/Ciudad_Juarez 已从 America/Ojinaga 中分离出来。

有关可用更改的完整列表,可查看 发行说明。

下载地址:https://www.postgresql.org/download/


(责任编辑:IT)