逻辑复制序列可能带着过期值进入 READY
Noah Misch 在一次 AI 辅助审查中发现逻辑复制序列的缺陷:sequencesync worker 从发布端取到序列值之后,发布端的序列继续推进并执行了 REFRESH SEQUENCES,worker 随后把旧值写进订阅端,已订阅的序列就带着过期数据进入 READY 状态。提议的修复是对正在同步的序列跳过重新初始化并告警,提示用户等本轮同步结束后重跑。Vignesh 已提交 v1 补丁。
pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
当天收录 32 条。
Noah Misch 在一次 AI 辅助审查中发现逻辑复制序列的缺陷:sequencesync worker 从发布端取到序列值之后,发布端的序列继续推进并执行了 REFRESH SEQUENCES,worker 随后把旧值写进订阅端,已订阅的序列就带着过期数据进入 READY 状态。提议的修复是对正在同步的序列跳过重新初始化并告警,提示用户等本轮同步结束后重跑。Vignesh 已提交 v1 补丁。
Melanie Plageman 更新了补丁,回应 Robert Haas 的审查意见。修复要求在清除 VM 位时,堆的 WAL 记录必须注册 VM 缓冲区,否则崩溃恢复后两边可能不一致。性能测试显示默认配置没有回退,但关掉 synchronous_commit 之后,因为持 VM 缓冲区锁的时间变长,TPS 下降 10 到 15%。Andrey Borodin 确认 v18 的回合补丁通过了 WAL 兼容性检查。
Imran Zaheer 提交了 Pipelined Recovery 补丁集的 v5。方案把 WAL 解码从 startup 进程里剥离,交给独立的 pipeline worker,两者用共享内存队列通信,序列化阶段改用 shm_mq_sendv() 避免额外拷贝。CPU 采样显示 startup 进程用于应用 WAL 记录的时间从约 47% 升到 89%,全内存工作负载下基准提升约 30%。审阅者 Xuneng Zhou 尚未做完整审查。
堆页剪枝过程中按需设置 Visibility Map 时,Free Space Map 没有跟着更新,VACUUM 可能因此跳过该页面,让空间信息一直过时。Melanie Plageman 提出在页面新近变为全可见时更新 FSM。Andres Freund 建议对没有删除任何元组的已满页面跳过这次更新,但认为在当前发布周期里用简单方案更稳妥,同时质疑原注释里说这类更新无关的说法缺乏依据。Melanie 已提交不含启发式优化的修复版本。
最近的提交给 pg_subscription 加了 subserver 和 subconflictlogrelid 两个字段,各自跨共享与非共享目录建立依赖。Noah Misch 指出,若在 subdbid 所指数据库之外执行 REASSIGN OWNED,这两个字段会被按当前数据库解释,导致报错或波及无关对象。修复思路是只处理 subdbid 与当前库匹配的行。Jeff Davis 认同并计划跟进。
EDB 发布了一套基于 EDB Postgres Advanced Server 的双层高可用参考架构。EDB Failover Manager 负责监控主备状态,在主库故障时自动完成切换;PgPool-II 部署在数据库节点前端,提供连接池与读写分离负载均衡,并用 watchdog 机制在三个实例之间做高可用,对外只暴露一个虚拟 IP。验证过的版本组合是 EPAS v16.4.1、EFM v4.9 和 PgPool v4.4.5。
GitHub 说明了它如何在 45 天内为活跃仓库建立经过校验的归属,并归档约 8000 个闲置仓库。owner 以 ownership-type 和 ownership-name 两个自定义属性记录,校验、警告和归档由 GitHub App 加 Kubernetes CronJob 驱动。理由是 secret scanning、依赖告警和供应链修复都需要知道谁能决定和修复;没有 owner,自动化最多发现问题,进不了闭环。
Cloudflare 称其多数流量已经用上 ML-KEM,接下来以 ML-DSA 推进认证一侧的防护,目标是在 2029 年实现全面后量子安全。文章也承认 ML-DSA 存在签名尺寸和实现上的限制,现有基于 RSA 与 ECC 的技巧不能完全照搬。后量子迁移的难点不在某一天换掉一个算法,而是证书、身份、签名、协议尺寸、设备兼容性和回滚链条构成的多年工程。
新实现的自旋锁持有时间比 dynahash 多 50 到 150 纳秒,扩容方案留待后续补丁。
位运算改成先减后加以避免重叠,此前 TerminateBufferIO 的 BM_IO_ERROR 标志会丢失。
按列名而非位置匹配源查询结果,即将发布的 SQL 标准允许同时给出显式列表。
自动生成列名与用户列名冲突还会误报重复,回退原因目前尚未查清。
Álvaro Herrera 去掉多余的系统缓存拷贝,并修复关系并发消失或被替换的处理。
schema 限定与 EXCEPT 列表的校验从语法层推迟到执行阶段集中处理。
基于 Rust 与 Apache DataFusion,性能和 GA 范围仍需用真实数据自行验证。
CVE-2026-53359 值得 KVM 宿主机核查补丁状态与嵌套虚拟化的暴露面。