Hubert 'depesz' Lubaczewski:等待 PostgreSQL 18 - 向进度视图添加基于成本的延迟时间
💡
原文英文,约1000词,阅读约需4分钟。
📝
内容提要
2025年2月11日,Nathan Bossart提交补丁,向pg_stat_progress_vacuum和pg_stat_progress_analyze视图添加了基于成本的延迟时间。新增参数track_cost_delay_timing用于收集信息,显示vacuum因成本延迟而睡眠的时间,增强了进度监控的细节。
🎯
关键要点
- 2025年2月11日,Nathan Bossart提交补丁,向pg_stat_progress_vacuum和pg_stat_progress_analyze视图添加基于成本的延迟时间。
- 新增参数track_cost_delay_timing用于收集信息,显示vacuum因成本延迟而睡眠的时间。
- 该补丁增强了进度监控的细节,报告了与vacuum相关的并行工作者的睡眠时间。
- 2016年首次引入vacuum进度的简单报告,之后进行了多次改进。
- 新变化提供了vacuum运行中因成本延迟而等待的时间信息。
- 通过修改设置,手动运行vacuum时也会出现成本延迟。
- 测试中创建了一个900MB的表,并对其进行了vacuum操作。
- 在vacuum运行期间,pg_stat_progress_vacuum视图显示了进度信息,包括延迟时间。
- 测试结果显示,vacuum在582264.662毫秒的总时间中,有98.9%的时间用于睡眠。
- 该工具的引入被认为是一个重要的改进,值得在pg日志中记录相关信息。
❓
延伸问答
PostgreSQL 18中新增了什么功能?
新增了基于成本的延迟时间监控功能,增强了pg_stat_progress_vacuum和pg_stat_progress_analyze视图的细节。
track_cost_delay_timing参数的作用是什么?
该参数用于收集vacuum因成本延迟而睡眠的时间信息,默认关闭。
vacuum操作中延迟时间的测试结果如何?
测试显示,vacuum在582264.662毫秒的总时间中,有98.9%的时间用于睡眠。
如何手动运行vacuum并观察延迟时间?
通过修改设置,手动运行vacuum时可以观察到成本延迟,使用pg_stat_progress_vacuum视图查看进度信息。
vacuum进度监控的历史背景是什么?
2016年首次引入vacuum进度的简单报告,之后进行了多次改进以提供更多信息。
这个补丁对PostgreSQL的影响是什么?
该补丁被认为是一个重要的改进,增强了进度监控的细节,值得在pg日志中记录相关信息。
🏷️
标签
➡️