WAIT FOR LSN 合入死锁与唤醒竞态修复
PostgreSQL 开发分支已提交一组 WAIT FOR LSN 修复,此前讨论的等待竞态有了实质进展。备库会拒绝在持有重量级锁时等待尚未到达的 LSN,避免查询与 WAL 回放互相等待、却无法被死锁检测器发现。配套提交补上了 WAL 段隐式刷盘后的等待者唤醒,并在升主结束时重新读取回放位置,防止使用旧值误报已退出恢复。这些改动完善了复制位点等待的并发语义,目前确认的是代码提交状态。
pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
当天收录 26 条。
PostgreSQL 开发分支已提交一组 WAIT FOR LSN 修复,此前讨论的等待竞态有了实质进展。备库会拒绝在持有重量级锁时等待尚未到达的 LSN,避免查询与 WAL 回放互相等待、却无法被死锁检测器发现。配套提交补上了 WAL 段隐式刷盘后的等待者唤醒,并在升主结束时重新读取回放位置,防止使用旧值误报已退出恢复。这些改动完善了复制位点等待的并发语义,目前确认的是代码提交状态。
为 CNPG-Extensions 构建容器时,Jeremy Schneider 发现,生成软件物料清单并不等于完整追溯供应链。Rust 工作区、仅来自 Git 的依赖及 Debian 包许可证,都可能被扫描工具遗漏;扩展显示的 SQL 版本也可能与安装包版本不同。他结合多种工具补全依赖和许可证,再用 Cosign 签名与附加证明关联产物。这份工程记录还提醒维护者,测试版进入稳定分发渠道仍需明确的发布策略。
微软解释了 Azure HorizonDB 的存储分工:计算节点只提交 WAL,不直接写数据页,页面由存储服务按日志重建。独立的 WAL 服务负责持久化与分发,Page Server 维护页面状态,主节点和只读副本共享存储。日志过滤服务进一步按页面分片转发记录,减少计算侧的网络与处理负担。脏页刷写、部分复制和归档职责因此离开 PostgreSQL 计算进程,使查询与事务可以使用更多计算资源。
AWS 将 CloudWatch Database Insights 扩展到 EC2 上自行管理的 PostgreSQL,可与 RDS、Aurora 放在同一监控界面排查问题。主机代理采集数据库活动、语句统计与操作系统指标,支持关联数据库负载、等待事件、热点 SQL、执行计划和日志,历史指标可保留 15 个月。自建实例尚不支持跨区域、跨账户的集群视图,也没有锁分析等全部托管功能,接入时仍需核对可用能力。
Cloudflare 的 1.1.1.1 解析器已默认支持 ML-DSA-44 后量子 DNSSEC 验证。新签名长达 2420 字节,超出常用 UDP 响应预算,因此解析器需要妥善处理截断与 TCP 重试。若经过认证的父区声明存在后量子信任路径,解析器会要求至少一条后量子路径验证成功,避免攻击者降级到传统签名。这是解析端的能力更新,完整信任链的部署仍涉及权威 DNS 服务和注册商对新算法的支持。
Cloudflare 重写了 Workers 的模块注册表,将模块标识统一为 URL,并按查询参数和片段区分模块实例。新实现补齐 import.meta 属性与解析能力,支持符合 Node.js 规则的同步 require(esm),通过惰性编译和缓存共享减少重复工作。它也严格校验导入属性,并对含顶层 await 的模块保留同步加载限制。目前须显式开启 new_module_registry 兼容开关,迁移时应回归模块解析与加载行为。
修复重写堆表时遗漏 TOAST 解码抑制标志,并跳过缺少新元组的更新;影响请求接收重写变更的输出插件。
单向 TLS 可连接 Oracle Autonomous;连接与过滤可下推,但 oracle_fdw 2.8 不下推聚合,统计信息须手动采集。
示例改写 asyncpg 连接重置、按新连接生成认证令牌,并在乐观并发冲突后以新事务重新读取和退避重试。
次级区域读端点无法自动识别全局拓扑;误用区域方言会导致连接初始化超时,故障转移插件与主机模式也须匹配。
工具记录变更及修改前镜像,再逆序撤销增删改;需要 MongoDB 6.0 以上的复制集或分片部署,不能替代备份。
插件以签名令牌映射用户组和角色,权限变化须重连才生效;文章对应的 8.4.11-11 与 9.7.2-2 版本当时尚未发布。
每日探测支持的算法,优先使用后量子混合密钥交换,并逐步放量、监测重试率;兼容的源站可少一次握手往返。
以 PKCE 保护授权码交换,避免向每台机器分发共享客户端密钥,再将身份提供方的用户组映射到 RBAC 权限。