↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

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

PostgreSQL 博览 RSS 订阅

当天收录 26 条。

PostgreSQL 修复 GiST 全文索引漏行

Shihao ZhongPostgreSQL Git

PostgreSQL 已合入 tsvector GiST 索引的漏行修复。页面分裂只有两个条目时,算法会在最后一个条目的缓存初始化前构造联合键,读取未初始化内存,可能令扫描漏掉本应匹配的行。补丁将缓存填充提前,提交注明回补至 PG 15,并指出已有的单列 tsvector GiST 索引可能需要 REINDEX。维护全文检索的团队应核对索引类型,安排补丁与重建验证,不能只检查查询是否报错。

FULL JOIN 修复错误的常量条件推导

Tomas VondraPostgreSQL Git

PostgreSQL 已合入 FULL JOIN 常量传播修复。优化器此前假定等式左、右操作数分别来自连接两侧;手写 ON 条件交换顺序,或操作数同时引用同一侧时,这个假定可能失效,使推导出的过滤条件作用到错误位置并返回错误结果。补丁先检查操作数实际来源,仅在分属两侧时继续推导,并注明回补至 PG 15。包含 COALESCE 过滤与复杂外连接的查询,可据补丁中的回归用例核对结果。

PostgreSQL 修复子计划复用过期结果

Richard GuoPostgreSQL Git

PostgreSQL 已合入一项子计划参数依赖修复。优化器移除多余查询层级时,会把初始化子计划交给下层节点,却没有同步它依赖的参数集合;外层值改变后再次扫描,子计划因此可能不重新求值,继续返回旧结果。单分区扫描中的相关子查询是已确认的触发场景。补丁一并转移参数依赖,提交注明回补至 PG 15。使用 LATERAL 与分区表组合的应用,应检查重复扫描时不同外层参数对应的结果。

用统计快照构建 PostgreSQL 工作负载报告

Tushar RajputAWS Database Blog

AWS 给出在 RDS 与 Aurora PostgreSQL 内构建 AWR 风格报告的完整实现:以统计视图和 pg_stat_statements 保存快照,通过 pg_cron 调度采集,再比较两个快照生成 SQL、等待事件、热点对象及配置变更报告。数据留在数据库中,无需额外采集代理。方案仅采集主实例,跨重启或故障切换的窗口不能直接计算差值;等待采样还会保存原始语句与客户端地址,保留期限和访问权限需同时设置。

Aurora 跨区域切换需同步 IAM 认证区域

Raunak GuptaAWS Database Blog

Aurora 全局数据库的写入端点会随主库切换,但稳定的连接地址并不能自动解决 IAM 认证。AWS 的演练指出,令牌签名区域和授权的集群资源 ID 都会改变;应用需动态发现当前主区域,并提前授权各区域集群,再通过统一写入端点连接。原文分别验证 PostgreSQL 与 MySQL 的切换流程,还要求缓存区域发现结果、认证失败时刷新,并遵守 DNS 缓存期限,避免切换后的连接风暴压垮控制面查询。

Cloudflare 解析 QuePaxa 的广域网共识取舍

João Pedro Leite、Bob Halley、James LarischCloudflare Blog

Cloudflare 解释了实验性全局控制面服务 Meerkat 为何采用 QuePaxa。广域网延迟抖动容易让传统领导者选举反复中断进展,这套协议允许多个提议者协作,借随机优先级收敛到同一提案;领导者提供单轮往返快路径,却不是继续处理请求的必要条件。更积极地并发提议也会增加带宽与决策轮次。团队仍在扩展崩溃恢复能力,并用形式验证、模拟和故障注入检查实现,文章展示的是工程取舍与实验进展。