postgres 9.6 新进度报告工具
postgres 9.6 new progress reporting facility
阅读 release notes 最近的 Postgres 9.6,我发现了这个有趣的新特性
Add a generic command progress reporting facility (Vinayak Pokale,
Rahila Syed, Amit Langote, Robert Haas)
进一步阅读没有给我任何关于此的信息,但是 some play around depesz 上的文章。
当然,我首先想到的是 - 某处是否也有任何已处理内容的历史记录(以及要处理的对象列表 - 我梦见了)?还是这个 pg_stat_get_progress_info
只显示当前而不知道 VACUUM 计划和过去?..
另一个问题 - 是否有接口可以为自己的进程(报告、数据加载等)使用该设施。
视图被调用pg_stat_progress_vacuum
; depesz 一定在他的文章中使用了旧版本的补丁。
目前,进度报告仅适用于 VACUUM
(和 autovacuum)操作。
此功能不提供历史数据,但还有其他获取这些数据的方法:
如果你设置log_autovacuum_min_duration
为0,所有的autovacuum操作都会在服务器日志中报告(通常,你不必运行 VACUUM
手动)。
pg_stat_all_tables
系统视图包含列 last_vacuum
和 last_autovacuum
,它们指示相应操作在 table 上最后一次 运行 的时间.
阅读 release notes 最近的 Postgres 9.6,我发现了这个有趣的新特性
Add a generic command progress reporting facility (Vinayak Pokale, Rahila Syed, Amit Langote, Robert Haas)
进一步阅读没有给我任何关于此的信息,但是 some play around depesz 上的文章。
当然,我首先想到的是 - 某处是否也有任何已处理内容的历史记录(以及要处理的对象列表 - 我梦见了)?还是这个 pg_stat_get_progress_info
只显示当前而不知道 VACUUM 计划和过去?..
另一个问题 - 是否有接口可以为自己的进程(报告、数据加载等)使用该设施。
视图被调用pg_stat_progress_vacuum
; depesz 一定在他的文章中使用了旧版本的补丁。
目前,进度报告仅适用于 VACUUM
(和 autovacuum)操作。
此功能不提供历史数据,但还有其他获取这些数据的方法:
如果你设置
log_autovacuum_min_duration
为0,所有的autovacuum操作都会在服务器日志中报告(通常,你不必运行VACUUM
手动)。pg_stat_all_tables
系统视图包含列last_vacuum
和last_autovacuum
,它们指示相应操作在 table 上最后一次 运行 的时间.