选择 打开 改范围 完整检索页

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

PostgreSQL 博览 RSS 订阅

当天收录 22 条。

powa-archivist 5.2.0 发布,支持 PostgreSQL 19

PoWA 团队PoWA

PoWA 团队发布了 powa-archivist 5.2.0,主要变化是支持 PostgreSQL 19,新增统计视图 pg_stat_recovery 和 pg_stat_lock,由 Julien Rouhaud 与 Georgy Shelkovy 贡献。powa-archivist 是 PostgreSQL Workload Analyzer 的采集底座,兼容所有仍受支持的大版本,能从多个实例采集并聚合指标,给出索引建议。

JSON_TABLE 的 PLAN 子句缺陷与性能回退都已修好

Thom BrownPostgreSQL hackers

Thom Brown 测试了修复 JSON_TABLE PLAN 子句的一组补丁:0001 修好 pg_dump 里 ERROR ON EMPTY 的处理,0002 保住 PLAN 子句的括号,0003 防止列被静默丢弃。0003 起初会让自动生成的路径名与用户指定的名字冲突,Korotkov 随后发了修订版。此前 NESTED PATH 查询约 3.7 倍的性能回退,根因是嵌套路径被反复求值,由 0005 修复。Thom 确认全部解决。

执行器批处理的堆层实验带来 4% 到 13% 提升

Denis SmirnovPostgreSQL hackers

Denis Smirnov 提交了一个 WIP 补丁,作为执行器批处理讨论中的堆层实验。补丁改 heap_getnextslot():页面模式扫描处理完页面上第一个元组之后,复用已经收集的可见元组偏移量,同时保留现有的 table AM 接口和逐元组的执行器接口。Apple M5 Pro 上的基准显示各类 count(*) 查询执行时间减少 4% 到 13%。与 Amit 的 v8 补丁集相比,pass-all 场景略逊。

按 XID 年龄失效复制槽的补丁到 v12

Bharath RupireddyPostgreSQL hackers

Masahiko Sawada 和 Bharath Rupireddy 就核心设计达成一致:vacuum 遇到被活跃 walsender 持有的槽直接跳过,不阻塞等待,也不发信号,否则多个 autovacuum worker 反复碰到同一个槽会产生大量检查点请求。checkpointer 与副本上的 restartpoint 仍是兜底路径。v12 还把 vacuum、检查点和物理逻辑两类槽的测试合进了一个补丁。

新视图 pg_stat_vfdcache 暴露虚拟文件描述符缓存

Ayoub KazarPostgreSQL hackers

有补丁提议新增 pg_stat_vfdcache 视图,暴露虚拟文件描述符缓存的统计,用来辅助调整 max_files_per_process。主要分歧在于暴露缓存总条目数还是只暴露活跃条目数,最终共识是两者都给。内存占用统计既不宜遍历全部 VFD,也不适合用固定常量估算文件名长度,Ayoub Kazar 改成运行时累计:打开文件时加上 sizeof(Vfd) 与文件名实际长度,释放时相应减去。

新视图将列出 xmin horizon 的各个持有者

Scott RayPostgreSQL hackers

Scott Ray 正在开发一个视图,展示 xmin horizon 的各类贡献者,包括后端进程、prepared 事务、复制槽和 hot standby feedback 的 walsender,并显示移除每个持有者后 horizon 会怎样变化。这项工作源自 autovacuum 无法清理元组时如何报告最旧 xmin 的讨论。Scott 最终另开线程和 CF 条目,避免干扰 cfbot。