选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

PostgreSQL 博览 RSS 订阅

当天收录 9 条。

CloudNativePG 修复指标导出器的超级用户提权漏洞

CloudNativePG 项目组CloudNativePG

CloudNativePG 发布 1.29.1 与 1.28.3,修复指标导出器中 CVSS 9.4 的 CVE-2026-44477。导出器原先以超级用户身份连接再用 SET ROLE 降权,低权限角色可借此提权并在主节点容器里执行任意命令。新版本改用权限受限的 cnpg_metrics_exporter 角色,同时修正三个高可用故障转移缺陷,其中一个涉及数据安全。项目方要求所有用户立即升级。

上千个值的 IN 子句把时间耗在查询规划上

TigerDataTigerData 博客

数千个值的 IN 子句在 PostgreSQL 里是隐蔽瓶颈:规划器逐个解析常量、展开成庞大表达式树,CPU 花在规划而不是执行。TigerData 实测把写法换成 ANY(ARRAY[...]),上千个 ID 作为单个数组参数传入,规划时间从 40 多毫秒降到 2 毫秒以内,并让规划器选择 Bitmap Index Scan。ORM 是超大 IN 子句最常见的来源,用 EXPLAIN ANALYZE 看规划是否超过总耗时一半即可判断。

pgcrypto 的两个远程执行漏洞潜伏了二十年

Christophe Pettusthebuild.com

pgcrypto 自 2005 年随 PostgreSQL 分发,两个漏洞在其中潜伏了约二十年。去年 12 月 ZeroDay.Cloud 的 AI 辅助模糊测试挖出这两个远程执行漏洞:一个是 PGP 会话密钥解析里缺少边界检查的堆溢出,另一个是编码校验缺陷,都能在数据库进程内执行任意代码。修复随 2 月的小版本发布,18.0、17.7 及更早的实例仍可被利用;这些函数默认授予 PUBLIC,作者建议回收公共执行权限。

ORDER BY 的两条解析路径会改变排序结果

Radim Marekboringsql

PostgreSQL 解析 ORDER BY 有两条路径:裸列名按 SQL-92 先查 SELECT 列表再回到表,包成表达式后按 SQL-99 只查 FROM 作用域。别名与输入列同名而取值不同时,ORDER BY a 与 ORDER BY -a 返回同样的行却是不同的顺序,加一个正号或 COLLATE 就足以切换路径;GROUP BY 的查找顺序又相反。要在表达式里用别名,只能套一层子查询把它移进 FROM。