PostgreSQL 资讯
保留原始来源与发布日期的新闻、博客和活动。
mcpsnoop 给 MCP 交互加上抓包式观测
本地运行前沿大模型的实践指南登上 HN 首页
Matthew Garrett 讨论如何给 agent 身份做授权
FreeBSD 把我的内存吃光了
1GB 的 GML 文件逼出了矢量瓦片方案
Bitcask 的日志结构哈希表论文被重新讨论
数据库命令行客户端 mycli 发布 2.0
PG DATA 2026 回顾与 2027 筹备
CAST FORMAT 或将走独立机制而非扩展现有转换
行模式识别给出 CLASSIFIER 的存储结构设计
json_table 的 PLAN 子句补丁推进到 v23
btree_gist 跨类型整数操作符补丁重做 rebase
GitHub 讲述如何把凭据泄露告警清到零
文章复盘其内部推广 secret scanning、分流告警和跟进修复的做法。
Brume 让 Postgres 假名化后仍保住外键
Show HN 项目,声称在多张表之间做假名化替换时仍能维持外键引用的一致。
文档称属性图支持安全标签,执行却报不支持
Noah Misch 发现提交 2f094e7 的文档与实现不符,并建议连带复查所有 RELKIND_VIEW 引用。
订阅命令的竞态修复扩展到发布与删除路径
Bertrand Drouvot 改用 SUBSCRIPTIONOID 查缓存,又确认 IF EXISTS 会忽略 missing_ok。
攻击者借 Langflow 漏洞自动化勒索数据库
Sysdig 记录了一条名为 JADEPUFFER 的攻击链:入侵者利用 Langflow 的漏洞拿下实例,再自动化地对能触达的数据库实施勒索。这类 AI 与低代码工具往往被快速部署到公网,权限给得很大,硬化和补丁都跟不上,于是成了攻击者优先挑的软柿子。可行的对策是把 agent 与 flow 类服务默认放回内网、强制认证、限制出站访问,把数据库凭据与服务隔离开,并把它们纳入常规漏洞扫描,而不是当试验品放着不管。
enable_parallel_append 管的是分区之间的并行
Parallel Append 让不同工作进程同时扫描不同的分区或 UNION ALL 分支,而不是全挤在同一个子节点上,是分区之间的粗粒度并行。Christophe Pettus 指出它还能混用可并行与不可并行的子节点,普通 Append 做不到,对只有非并行索引的分区表尤其有用。参数默认打开。小查询并行后反而变慢时,可以临时关掉确认是不是启动开销盖过收益,但正确的收尾是更新统计、调 parallel_workers 或代价阈值,再改回默认。
全局临时表补丁 v6 修掉一处数据损坏
Dean Rasheed 发布全局临时表补丁的 v6,修掉了 Nico Williams 借助大模型辅助审查找出的一批问题。最要紧的一处会造成数据损坏:TRUNCATE 把会话级的冻结 XID 错误写进了共享的 pg_class。其余包括 vacuum.c 的未初始化变量、少拿 ProcArrayLock、事务结束时没重置的计数器。设计上 v6 把 pg_class 里全局临时表的冻结 XID 一律置零,只更新 pg_temp_class。
psql 的 \d tablename 退化成了顺序扫描
提交 85b7efa1cdd 带来一处回归,psql 的 \d tablename 从索引扫描退化成顺序扫描,目录一大就明显变慢。Andres Freund 最先发现,Jelte Fennema-Nio 定位根因并给出恢复索引扫描的补丁。Tom Lane 审查后认为方向正确,但必须同时检查两个排序规则是否都是确定性的,只查一个不够。他还指出原提交说明有几处不准确:问题只影响精确匹配而不影响前缀匹配,正则表达式和 LIKE 模式都会中招。修订后的 v2 补丁已附在邮件里。
Ubicloud 为 Postgres 选择严格内存 overcommit
OOM killer 杀掉正在改共享内存的后端进程时,共享内存可能停在不一致状态,有损坏已存数据的风险;postmaster 随即终止所有后端,重启还要跑崩溃恢复。Ubicloud 的 Burak Yucesoy 说明他们把 vm.overcommit_memory 设为 2,用分配阶段的 ENOMEM 换掉这种又晚又暴烈的失败,vm.overcommit_kbytes 取总内存的 80% 加 2GB。代价是机器混跑别的负载时,数据库也会被牵连着拿到 ENOMEM。