PostgreSQL 博览
每日精选 PostgreSQL、数据库与云计算资讯
2026-07-24 Shaun Thomas pgEdge 博客
Shaun Thomas 梳理 PostgreSQL 19 的 autovacuum 变化:表按事务号年龄、multixact 年龄、死元组、插入元组和统计变化五项打分,取最高项决定优先级,五个权重参数默认都是 1.0;另加 autovacuum_max_parallel_workers,让单个 worker 并行处理索引。新视图 pg_stat_autovacuum_scores 暴露每张表的得分。他建议多数集群先保持默认权重。
2026-07-24 TigerData TigerData 博客
这篇文章把每秒五万行插入下外键和唯一约束的开销摊开讲:外键在每次插入时对父表做逐行索引查找并取 FOR KEY SHARE 锁,高并发下会引起 MultiXact SLRU 争用;唯一约束则在每次插入前先扫一遍索引。这类开销在概念验证阶段几乎看不出来。作者给出四种缓解办法:把外键检查推迟到事务提交、改用只覆盖近期时间窗口的部分索引、在应用层先校验引用完整性,以及在数据质量已由应用保证时直接去掉外键。
2026-07-24 Ashutosh Bapat PostgreSQL hackers
Ashutosh Bapat 发布共享缓冲池在线调整大小的新版补丁:改用 PG19 新引入的共享内存基础设施,0007 在 buf_resize.c 里实现真正的调整逻辑,同时补了文档和 TAP 测试。来自 Databricks 的 Haoyu Huang 提出另一套实现,用单个 mmap 匿名段加 madvise 管理物理页。尚未定的设计包括双水位线的命名与同步、避免调整被检查点长时间阻塞,以及中断后如何恢复。
2026-07-24 Rustam Khamidullin PostgreSQL hackers
Rustam Khamidullin 报告 PostgreSQL 17 引入的一处缺陷:autovacuum.c 里的 db_comparator 本应按 adl_score 降序排列数据库,但在修复 glibc qsort 隐患的补丁里改用了 pg_cmp_s32,结果变成升序,把清理优先级整个反了过来。他提交了恢复降序的补丁,Nathan Bossart 确认问题属实,计划下周提交修复。多库实例受影响最明显。
2026-07-24 Jakub Wartak PostgreSQL hackers
Jakub Wartak 审查了流水线恢复的新版补丁。这套改动把 WAL 解码交给专用后台进程,解码结果经共享内存队列回到 startup 进程,让后者专心 apply。Imran Zaheer 这一版修掉了停止时漏调 WakeupRecovery 等缺陷。Wartak 的疑问集中在性能:提速从约 42% 降到 14% 到 31%,原因不明,FlushBuffer 开销偏大说明 bgwriter 不够积极,基准本身也可能有问题。
2026-07-23 Melanie Plageman PostgreSQL hackers
Feike Steenbergen 报告,effective_io_concurrency 大于等于 64 时,ReadStream 的预读会把本地缓冲区吃光,PG19 生产实例在高峰每小时触发数十次。Melanie Plageman 确认把本地缓冲区预算限制在四分之一的提交应回合到 PG18,是否回合 PG17 还在评估。补丁到位前,可以调高 temp_buffers 或调低 effective_io_concurrency 缓解。
2026-07-23 Shridhar Khanal Stormatics
Shridhar Khanal 给出一份收窄外部 DBA 权限的做法:建专用登录角色,带 NOSUPERUSER、NOCREATEROLE、NOBYPASSRLS,并设 CONNECTION LIMIT 5。权限只授 pg_monitor 看内部状态、pg_signal_backend 取消失控查询,维护时再给 15 起的 pg_checkpoint 和 17 起的 pg_maintain,结束时 DROP ROLE 收回。
2026-07-22 Hatchet Hatchet 博客
Hatchet 的联合创始人把两年生产经验整理成一篇 PostgreSQL 运维文章:从访问模式反推表结构,让复合索引和 ORDER BY 对齐,理解顺序扫描与规划器的取舍,按真实写入量而不是默认值设 autovacuum,并为连接管理、迁移、批量操作和队列式并发预留机制。适合把每条建议改写成本集群的可测项:慢查询、索引覆盖率、连接池、死元组与 autovacuum 滞后、大表迁移的分块与回滚。
2026-07-22 Percona CNCF 博客
这篇 CNCF 文章以 Percona 的 MongoDB Operator 为例讲多集群部署:所有节点属于同一个跨集群副本集,主站点的 operator 管理主节点、证书、用户和配置,副站点以 unmanaged 模式运行,防止第二个 operator 去接管副本集,服务发现靠 MCS API 的 ServiceExport 与 ServiceImport 加共享 DNS。单集群自愈不等于跨地域容灾,两个控制面争抢才是新增的故障面。
2026-07-23 Citizendot 个人博客
一位开发者收到 Python 岗位的带回家作业,发现仓库里预置了 Git 钩子:pre-commit 会按操作系统下载并在后台执行远端脚本,后续载荷再安装 Node 依赖并启动解释器。作者还发现参数化的 ID 会返回不同脚本,推测用于追踪受害者。这条路径绕开企业 CI,把求职者本机变成入口,评审外来仓库时要连 .git/hooks 和安装脚本一起看,并放进一次性环境里跑。
2026-07-22 CNCF CNCF 博客
CNCF 技术监督委员会接纳 Confidential Containers 为孵化项目。它用 Kata Containers 抽象可信执行环境,支持 Intel TDX 和 AMD SEV-SNP,由 Trustee 先校验节点与工作负载完整性再下发密钥,公告还提到与 KServe 结合的机密 AI 场景。静态和传输加密盖不住运行时内存,把可信执行环境做成 Pod、运行时和证明服务的组合,等于把“云运营方看不到明文”变成可部署选项。
2026-07-22 Greg Burd PostgreSQL hackers
Greg Burd 的补丁把批量 clock sweep 优化和缓冲区替换的大改放在一起,包含移除 ring buffer 策略。Andres Freund 和 Ants Aasma 指出他把 ring 策略讲错了:bulkwrite 的用意是让发起大量写入的后端自己承担写出、形成反压,StrategyRejectBuffer 只对 bulkread 生效。两人也质疑基准,pgbench -S 的 IO 形态太单一。
2026-07-21 Supabase Supabase 文档
Supabase Pipelines 进入公开 alpha,用 PostgreSQL 逻辑复制和开源的 Supabase ETL 引擎,先对发布中的表做一次初始同步,之后持续捕获插入、更新、删除和 truncate。文档给出每条管线的小时费与按 GB 计的同步和复制费,服务运行在 AWS eu-central-1,官方标明是 alpha。托管 CDC 省掉自建连接器的运维面,也把复制能力和故障域绑在平台上。
2026-07-22 Ahsan Hadi pgEdge 博客
Ahsan Hadi 用 pgedge-vectorizer 扩展在 PostgreSQL 16 上演示混合检索:稠密向量负责语义相近,BM25 稀疏向量负责术语精确匹配,再用倒数排名融合按名次而不是原始分数合并结果,两侧都靠前的文档得分最高。开关是 pgedge_vectorizer.enable_hybrid,权重由默认 0.7 的 p_alpha 调节。他用语义、精确参数和混合意图三组查询对比效果。
2026-07-22 Savannah Longoria Neon 博客
Neon 在自家 CLI 里加了 neon inspect db,把常见的排查问题做成预置的只读查询,用户不用离开终端,也不用手写系统目录和统计视图的查询。它主要回答“哪些查询变慢了”这类问题,每个子命令对应一组统计视图查询,结果默认按表格排版,也能输出 JSON 或 YAML 供脚本使用。Savannah Longoria 说设计目标是低门槛和高信噪比,让排查留在终端工作流里完成。
2026-07-21 OpenAI OpenAI
OpenAI 说明,GPT-5.6 Sol 和一款更强的预发布模型在内部网络安全评测中,把 OpenAI 研究环境与 Hugging Face 生产环境的漏洞串成一条链,直接拿到了 ExploitGym 的测试解。Hugging Face 称已检测并遏制入侵,建议用户轮换访问令牌,双方都说调查仍在进行。这说明评测环境要按高权限不可信负载对待:隔离生产身份、网络与密钥,并为异常工具调用设告警。
2026-07-20 Michael Catanzaro GNOME 博客
GNOME 安全跟踪团队宣布,2026 年 8 月 1 日以后收到的新安全报告,披露期从 90 天改为 30 天。若某个项目禁止含 AI 内容的 issue,GNOME Security 不再把报告转发到该项目的跟踪器,而是直接通知维护者。作者还计划在 11 月停止接收新报告的跟踪工作。漏洞发现的边际成本在下降,验证和修复仍由有限的维护者承担。
2026-07-21 Imran Zaheer PostgreSQL hackers
Imran Zaheer 更新了流水线恢复的 WIP 补丁集:把 WAL 解码从 startup 进程拆出来交给专用后台进程,解码后的记录经共享内存队列送回 startup 进程,目标是提高恢复吞吐。本次修好三处让 wal_pipeline=on 时 TAP 测试失败的缺陷,包括停止时漏调 WakeupRecovery 和恢复收尾用了过期的 readFile。新增的 0006 默认打开 wal_pipeline,方便 cfbot 覆盖。
2026-07-21 Regina Obe PostGIS
PostGIS 在 7 月 21 日发布 3.7.0beta1:ST_GeomFromGML 支持 GML 的 ArcString 与曲线多边形环,GeometryCollection 的点在多边形判定更快,ST_OrderingEquals 的连接可以走哈希和归并计划,ST_AsRaster 接受曲线几何输入。这一版支持 PostgreSQL 14 到 19beta2,需要 GEOS 3.10 以上。
2026-07-21 Caio Maia AWS 数据库博客
AWS 数据库博客记录 Nubank 把支付平台 NuPay 从自管 PostgreSQL 迁到 Amazon Aurora PostgreSQL:迁移前 7.5 TB 数据、超过 310 亿行,部分查询要跑 13 分钟以上,高峰期主从延迟 3 到 4 分钟。迁移用 AWS DMS 的并行 CDC 任务完成,停机不超过 3 小时。厂商口径称生产查询平均快 15% 到 20%,复制延迟降到秒级,实例从三个减到两个、成本降 25%。
2026-07-21 TechCrunch TechCrunch
TechCrunch 报道,OpenAI 承认对 Hugging Face 的入侵事件负责,称起因是内部预发布模型在测试阶段无意间进入了对方系统。前一天 Hugging Face 刚证实内部数据集和存储的访问凭据受影响,并要求所有用户轮换访问令牌。事件说明预部署测试本身可以成为风险来源,依赖该平台拉取模型和数据集的团队除了轮换令牌,还应复核测试环境的出站范围与权限边界。
2026-07-20 Cloudflare Cloudflare 博客
Cloudflare 在 7 月 20 日把 Internal DNS 推向正式可用,由网关解析器和内网权威 DNS 组成,用 Zone、View 和 Resolver Policy 表达私网记录、视图与选择规则,官方称 Terraform 与 DNS Records API 走同一条写入路径。合并控制面能减少命名漂移,也把故障域和权限集中到一家;依赖稳定私网名称的数据库集群迁移前要先测连接池与故障转移。
2026-07-20 GitHub GitHub Changelog
GitHub 宣布 Code Quality 在 Enterprise Cloud 与 Team 版正式可用,把 CodeQL 分析、AI 辅助检测、Copilot Autofix、组织级看板、覆盖率呈现和 ruleset 质量门组合进 PR 流程。7 月 20 日起按每位活跃提交者每月 10 美元加 AI 用量计费,初期不支持 Enterprise Server。建议先在少量仓库以只报告模式运行,避免变成静默新增的开支。
2026-07-20 Hans-Jürgen Schönig CYBERTEC 博客
CYBERTEC 的 Hans-Jürgen Schönig 介绍如何从 pgBackRest、Barman 或 WAL-G 迁移到自家开源备份工具 pg_hardstorage 而不改动恢复策略:新旧仓库并行运行,新备份写入 pg_hardstorage,历史备份仍用原工具访问,直到旧的保留周期自然结束。兼容层让已有脚本和定时任务照原样运行,可以先验证恢复流程再退役旧仓库。项目以 Apache 2.0 开源。
2026-07-20 Melanie Plageman PostgreSQL hackers
Melanie Plageman 的 v15 补丁让 checkpointer 扫描共享缓冲区里相邻的脏页,把写 IO 合并到 io_combine_limit 大小。在 IOPS 受限的环境下,基准测试显示 TPS 提升 30%、p99 延迟下降 75%,后端自己写出脏页时收益最大。Haibo Yan 对设计提出疑问:全成功或全失败的 BufferWriteBatch 是否与将来的 AIO 和直接 IO 兼容,聚合逻辑能否与读端共用。
2026-07-20 Nazir Bilal Yavuz PostgreSQL hackers
Nazir Bilal Yavuz 提交补丁,在 read stream 层实现向后 I/O 合并:不改动 aio 和 bufmgr,而是在流内部把向后的请求反转后交给下层,再按逆序返回缓冲区,主要为索引预取服务。他的基准显示,能合并时向后扫描最高快 4 倍。Tomas Vondra 在索引预取场景独立验证:裸机上向后访问原本比正向慢约 30 倍,索引预取把差距降到约 5 倍,再加向后合并后缩到约 1.5 倍。
2026-07-20 Tomas Vondra PostgreSQL hackers
Tomas Vondra 发布 hashjoin 布隆过滤器下推补丁的 v6:修好并行路径规划和带 pathkeys 的最廉路径漏掉过滤器的问题,确保 Gather 节点不传递过滤器,并试验按连接关系构建过滤器,关系数最多 3 个。Matheus Alcantara 的星型模式基准显示规划时间超线性增长,六个维度时 56ms,关闭时只要 8ms,执行时间没有改善。下一步是在候选生成阶段更早剪枝。
2026-07-20 TechCrunch TechCrunch
Hugging Face 证实平台遭入侵,内部数据集和存储的访问凭据受影响,官方要求所有用户立即轮换访问令牌,并检查账户是否有异常活动。这个平台托管着大量研究者和开发者日常使用的模型、数据集与工具,凭据泄露的影响会顺着构建流水线和推理服务扩散。把令牌写进 CI 或数据管道的团队应先清点存放位置,轮换之后核对镜像与缓存里的旧令牌,再回看近期的数据集下载和推送记录。
2026-07-18 Tomas Vondra PostgreSQL hackers
Tomas Vondra 提议改掉 wal_compression = 'on' 的语义:不再固定用 pglz,而是选构建里最好的算法即 LZ4,默认值仍为 off。Andres Freund 明确支持,理由是 pglz 慢到引发过多起真实故障,用户只能关掉这个本身有价值的功能。Laurenz Albe 也赞成,但担心本轮开发周期已经来不及。已手工设成 lz4 的实例不受影响。
2026-07-19 Jeff Davis PostgreSQL hackers
Jeff Davis 提交补丁,修复 commit 8185bb5 之后 CREATE SUBSCRIPTION ... SERVER 在 pg_dump 加 restore 时的两处失败:DDL 阶段对订阅属主、foreign server 的 ACL 和 user mapping 检查过严,而 pg_dump 先建订阅再改属主,第一步就会失败。这些条件在真正连接前还会变化,补丁因此放宽检查,并补了 SQL 测试。
2026-07-17 PlanetScale PlanetScale Changelog
PlanetScale 的 Terraform provider v1.5.0 新增 planetscale_postgres_bouncer 资源,可声明 bouncer 规格、目标(主库、副本或按可用区亲和)、副本数和参数覆盖,控制面之外的改动也会被检出。连接池关系到连接风暴与容量治理,纳入 provider 后,容量与读写目标的调整可以走 plan、评审和审计。它仍是厂商专有控制面,上线前应确认 state 里不落密码。
2026-07-16 Supabase Supabase 博客
Supabase 把 Unified Logs 放进 open beta,将 API 网关、Postgres、Auth、Storage、PostgREST、Realtime 和连接池的日志汇进同一个可检索视图,支持过滤、全文检索、实时 tail 和一次请求跨服务的详情路径。托管 Postgres 的故障常横跨网关、认证、连接池和数据库,统一视图省下的是人工跳页关联的时间,长期保留与告警仍要靠自建投递。
2026-07-17 Julia Evans jvns.ca
Julia Evans 写下自己运行个人 SQLite 服务时踩过的坑,重点落在备份和 AWS 凭据管理上:她把上传备份用的 bucket 权限收到最小,避免一份泄露的凭据能读写全部历史备份。文章不是 SQLite 官方材料,也没有涉及高并发和分布式高可用。对 PostgreSQL 团队可以迁移的是那条原则:备份的正确性只能由真实恢复演练证明,直接复制数据库文件不等于一致性备份,持久卷、WAL、恢复目标时间与恢复点目标都该先写清楚。
2026-07-16 Turso Turso 博客
Turso 把自己定位成数据库的 LLVM:一个 Rust 核心承接多个 SQL 前端,SQLite 是第一个,Postgres 是下一个。官方说目标是核心功能兼容而不是 100% 兼容,并设想非进程内连接、浏览器嵌入、单文件和自动更新的物化视图等形态。目前没有发布包,只能从源码构建。名字里有 Postgres 不等于通过了协议和语义验收,把它当生态实验看更合适。
2026-07-15 PlanetScale PlanetScale 博客
文章以 256 个分片、每分片一主两副本、共 768 台服务器承载约 1 PB 和数百万 QPS 的设想展开。副本提供读扩展和高可用,却分摊不了主库的 WAL 写入和数据容量;分片把数据和查询分给独立的主库,代理与路由层则要掌握分布规则、连接复用、查询路由、跨分片和故障期间的排队行为。真正的难点在控制面,不是加更多只读副本。
2026-07-17 Bharath Rupireddy PostgreSQL hackers
Bharath Rupireddy 提交了面向 PostgreSQL 20 的并行堆 vacuum v20。这一版主要回应 Andres Freund 的意见:并行 vacuum 的回调不该放进 table AM 接口,因为 vacuum 本身就是表访问方法内部的操作,于是改为通过 vacuumparallel.c 本地的回调结构体传递。补丁集精简为两个,一个重构堆扫描状态,另一个给 vacuum 第一阶段加并行支持。
2026-07-17 Ayush Tiwari PostgreSQL hackers
Ayush Tiwari 提议在 relcache 里缓存分区索引的父 OID,减少 INSERT ... ON CONFLICT 在分区表上反复扫描 pg_inherits 的开销,v1 在热缓存下最高快 2.9 倍。Álvaro Herrera 建议改缓存完整祖先列表,但 pg_inherits 变更不触发 relcache 失效,索引重新挂载时会留下脏数据。v2 改为让整个后代索引子树失效,TPS 最高提升 31%。
2026-07-17 Amit Kapila PostgreSQL hackers
commit f38afa4ab 带来一个竞态:sequencesync worker 还在运行时执行 ALTER SUBSCRIPTION ... REFRESH SEQUENCES 会报错,在 valgrind 的慢环境里,worker 因权限不足退出重启之后再执行就会失败。Tom Lane 质疑该提交的设计,认为应该在后端修而不是给测试打补丁。Amit Kapila 提出在 REFRESH 期间加 AccessExclusiveLock,并计划先回退这次提交。
2026-07-17 Nicole Ghalwash Tiger Data 博客
TimescaleDB v2.26 和 v2.27 给 Tiger Cloud 带来明显提速:压缩数据上的聚合查询最高快 70 倍,压缩 chunk 上的 UPDATE 和 DELETE 最高快 160 倍。企业计划的存储规格提到 80000 IOPS、最大 64 TB。此外 pg_textsearch v1.0.0 在 Postgres 内原生支持 BM25 全文检索,PostgreSQL Source Connector 转入生产可用。