DeepSeek总结的PostgreSQL 18.2 版本发布说明要点

PostgreSQL 18.2 版本发布说明

原文地址:https://www.postgresql.org/docs/release/18.2/
发布日期: 2026年2月12日
适用版本: 18.X 系列
升级要求: 通常情况下无需执行 dump/restore;但如果使用了 ltree 类型的索引,可能需要在更新后重建索引。


一、安全漏洞修复(CVE)

编号 问题描述 修复措施
CVE-2026-2003 oidvector / int2vector 类型未校验数组维度与空值 增加输入验证,防止异常行为
CVE-2026-2004 contrib/intarray 的选择性估计函数可被滥用执行任意代码 限制非内置选择性估计函数只能由超级用户使用
CVE-2026-2005 pgcrypto PGP 解密函数存在缓冲区溢出风险 增加对消息格式的严格校验
CVE-2026-2006 多字节字符长度校验不严,可能导致缓冲区溢出 增强字符串处理中的编码校验,可能引发"无效字节序列"错误
CVE-2026-2007 pg_trgm 在某些语言环境下因字符数量变化导致缓冲区溢出 调整大小计算方式,避免溢出

二、主要功能与行为修复

1. 查询优化与执行器
  • CTE 引用层级问题:修正了子查询中 CTE 引用对聚合函数语义的影响,现按标准 SQL 报错。
  • MERGE 触发器行为修复 :修复了 CTE 中同时包含 MERGE 和其他 DML 时,AFTER 触发器未包含 MERGE 影响行的问题。
  • 分区表全子表被裁剪时避免报错:修复了"could not find junk ctid column"错误。
  • 窗口函数去重问题:避免因重复窗口函数调用导致的计划错误。
  • 子查询优化改进:支持将外层限制条件下推到包含 volatile 或 SRF 的 GROUP BY 子句中,避免错误或重复计算。
  • PlaceHolderVar 支持增强:优化统计信息匹配和索引匹配,提升查询计划质量。
2. 索引与存储
  • 部分哈希索引优化:即使索引谓词隐含 WHERE 条件,仍允许使用索引扫描。
  • 未记录 BRIN 索引不再写 WAL:修复崩溃恢复中"文件已存在"错误。
  • GIN 并行构建修复:使用正确的排序函数,避免索引无效或构建失败。
  • ltree 大小写匹配修复 :统一使用数据库默认排序规则,可能需要重建索引。
3. 复制与日志
  • NOTIFY 消息处理改进:防止因消息未处理导致 CLOG 被截断;错误升级为 FATAL,确保客户端感知消息丢失。
  • 逻辑复制修复 :
    • 修复 slot 无效化、xmin 计算、复制进度推进等问题;
    • 修复并行 worker 失败后事务丢失问题;
    • 修复 LOCK_TIMEOUT 被忽略的问题。
  • 增量备份修复 :修复大表被 VACUUM 截断后,pg_combinebackup 失败的问题。
4. 系统工具与扩展
  • pg_dump :修复序列值收集失败、权限不足时错误输出、oauth_validator_libraries 引号问题。
  • pgbench :修复管道模式下多个 \syncpipeline 命令的错误处理。
  • pg_resetwal:支持设置 multixact xid 为 0 或 offset 为 UINT32_MAX,修复升级失败问题。
  • amcheck:修复并发创建索引时的假阳性错误,支持"半死页"和不完整根页分裂。
  • pg_stat_statements:修复查询 ID 计算未考虑 GROUP BY 表达式的问题。
  • pg_buffercache:减少 NUMA 页状态内存占用。

三、平台兼容性与构建修复

  • LLVM JIT:适配 LLVM 17+ 和 LLVM 21,修复 aarch64 编译问题。
  • Solaris / Hurd:修复命令行参数解析与进程标题设置。
  • Windows :支持 O_CLOEXEC 标志,避免子进程继承文件句柄。
  • 文件扩展方法优化 :新增 file_extend_method 参数,可选择使用 posix_fallocate() 或传统写零方式,解决特定文件系统问题(如 BTRFS 压缩失效、XFS ENOSPC 误报)。

四、时间区数据更新

  • 更新为 tzdata 2025c,主要修正墨西哥下加利福尼亚州 1976 年前的历史时间戳。
相关推荐
zyseo8几秒前
谷歌SEO 准首页词挖掘脚本:找出排在第 8-20 名的隐藏流量
大数据·数据库·人工智能
xiaogai_gai2 小时前
仅查询策略实战:从金蝶云·星空旗舰版定时拉取收料通知单
大数据·数据库·python
数据工匠老o2 小时前
异构数据库DDL同步:260条链路的结构变更自动适配方案
数据库·架构
这个DBA有点耶3 小时前
银行业市占率最高的国产数据库是谁?先搞清楚“市占率”的四种口径
数据库·程序员·架构
用户6279947182624 小时前
南大通用GBase 8a之基于审计日志的冷温热数据分析
数据库
数据库小学妹4 小时前
数据库运维五级成熟度:监控、备份、高可用怎么串起来
运维·数据库·监控
一个天蝎座的程序猿4 小时前
为了给报表提速,我把金仓KES的列存储折腾了个遍:聊聊KES的技术能力
数据库
飞越未来云城的霓虹飞猪4 小时前
AI 数据库地图:从 PostgreSQL 到向量数据库,一次看懂 AI 时代的数据底座
数据库
不像程序员的程序媛4 小时前
导出mysql数据结构
数据库·mysql
GlobalTradercrb4 小时前
独立站SEO先写博客还是先优化产品页?看站点阶段
数据库·人工智能·google·pdf·go·seo