PROGRESS REPORT进度视图
pg_stat_progress_vacuum
每个正在运行VACUUM的后端(包括自动清理工作进程)一行,显示当前进度。请参阅Section 27.4.3。
进度视图 引入 9.6 现存至 20 devel 3 次结构变更
版本轨迹
相对 PostgreSQL 17:新增 1 个字段。
只要VACUUM正在运行,pg_stat_progress_vacuum视图就会为每个当前正在清理的后端(包括自动清理工作进程)包含一行。下表描述了将报告的信息,并说明如何解释这些信息。VACUUM FULL命令的进度通过pg_stat_progress_cluster报告,因为VACUUM FULL和CLUSTER都会重写表,而常规的VACUUM只会原地修改表。参见Section 27.4.4。
字段
PostgreSQL 18 的 15 个字段,按定义顺序排列。说明默认用本站手册的译文,没有译文的按英文原文显示。
| 字段 | 类型 | 说明 |
|---|---|---|
pid
|
integer
|
后端的进程ID。 |
datid
|
oid
|
后端连接到的数据库的OID。 |
datname
|
name
|
后端连接到的数据库的名称。 |
relid
|
oid
|
被vacuum的表的OID。 |
phase
|
text
|
vacuum的当前处理阶段。参见 Table 27.43。 |
heap_blks_total
|
bigint
|
该表中堆块的总数。这个数字在扫描开始时报告,之后增加的块将不会(并且不需要)被这个VACUUM访问。 |
heap_blks_scanned
|
bigint
|
被扫描的堆块数量。由于visibility map被用来优化扫描,一些块将被跳过而不做检查, 被跳过的块会被包括在这个总数中,因此当清理完成时这个数字最终将会等于heap_blks_total。 仅当处于扫描堆阶段时这个计数器才会前进。 |
heap_blks_vacuumed
|
bigint
|
被清理的堆块数量。除非表没有索引,这个计数器仅在处于清理堆阶段时才会前进。 不包含死亡元组的块会被跳过,因此这个计数器可能有时会向前跳跃一个比较大的增量。 |
index_vacuum_count
|
bigint
|
已完成的索引清理周期数。 |
max_dead_tuple_bytes
|
bigint
|
在需要执行索引清理周期之前可存储的死亡元组数据量,取决于maintenance_work_mem。 |
dead_tuple_bytes
|
bigint
|
自上一个索引清理周期以来收集到的死亡元组数据量。 |
num_dead_item_ids
|
bigint
|
自上一个索引清理周期以来收集到的死项标识符数量。 |
indexes_total
|
bigint
|
将要执行 vacuum 或清理的索引总数。该数字会在 vacuuming indexes 或 cleaning up indexes 阶段开始时报告。 |
indexes_processed
|
bigint
|
已处理的索引数量。该计数器只会在 vacuuming indexes 或 cleaning up indexes 阶段推进。 |
delay_time
新
|
double precision
|
因基于成本的延迟而睡眠的总时间(参见Section 19.4.4),以毫秒计(如果启用了 track_cost_delay_timing,否则为零)。这包括任何相关并行工作进程的睡眠时间;不过,并行工作进程最多每秒才会上报一次自己的睡眠时间,因此该值可能略有滞后。 |
演化历史
相邻两个大版本之间的差异,新的在前。版本号链到该版的字段表。
-
PostgreSQL 19 ← 18 结构变更
modestarted_by1 处描述更新
phaseCurrent processing phase of vacuum. See Table 27.46. Current processing phase of vacuum. See Table 27.51.
-
PostgreSQL 18 ← 17 结构变更
delay_time -
PostgreSQL 17 ← 16 结构变更
max_dead_tuple_bytesdead_tuple_bytesnum_dead_item_idsindexes_totalindexes_processedmax_dead_tuplesnum_dead_tuples关系说明更新1 处描述更新
phaseCurrent processing phase of vacuum. See Table 28.45. Current processing phase of vacuum. See Table 27.46.
-
PostgreSQL 16 ← 15 仅描述更新
关系说明更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 28.41. Current processing phase of vacuum. See Table 28.45.
-
PostgreSQL 15 ← 14 仅描述更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 28.39. Current processing phase of vacuum. See Table 28.41.
-
PostgreSQL 14 ← 13 仅描述更新
关系说明更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 27.37. Current processing phase of vacuum. See Table 28.39.
-
PostgreSQL 13 ← 12 仅描述更新
关系说明更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 27.25. Current processing phase of vacuum. See Table 27.37.
-
PostgreSQL 12 ← 11 仅描述更新
关系说明更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 28.22. Current processing phase of vacuum. See Table 27.25.
-
PostgreSQL 10 ← 9.6 仅描述更新
1 处描述更新
phaseCurrent processing phase of vacuum. See Table 28-21. Current processing phase of vacuum. See Table 28.22.
-
PostgreSQL 9.6 ← 9.5 新增此关系
共 11 个字段
字段矩阵
每个字段在 12 个收录版本里的存在情况;方格指向该版的字段表。「有变」指类型、可空、隐式或数组维数与上一版不同。
存在 有变 已移除 不存在
| 字段 | 9.6 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
pid |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
datid |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
datname |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
relid |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
phase |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
heap_blks_total |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
heap_blks_scanned |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
heap_blks_vacuumed |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
index_vacuum_count |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 |
max_dead_tuples |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 已移除 | 不存在 | 不存在 | 不存在 |
num_dead_tuples |
存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 存在 | 已移除 | 不存在 | 不存在 | 不存在 |
max_dead_tuple_bytes |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 | 存在 |
dead_tuple_bytes |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 | 存在 |
num_dead_item_ids |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 | 存在 |
indexes_total |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 | 存在 |
indexes_processed |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 | 存在 |
delay_time |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 | 存在 |
mode |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 |
started_by |
不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 不存在 | 存在 | 存在 |
同类关系
| 关系 | 引入 | 字段 | 版本变动 | 最近变更 |
|---|---|---|---|---|
pg_stat_progress_analyze |
13 | 14 | 192 次 | |
| 每个正在运行ANALYZE的后端(包括自动清理工作进程)一行,显示当前进度。请参阅Section 27.4.1。 | 现存 | |||
pg_stat_progress_basebackup |
13 | 7 | 191 次 | |
| 每个正在流式传输基础备份的 WAL 发送进程一行,显示当前进度。请参阅Section 27.4.5。 | 现存 | |||
pg_stat_progress_cluster |
12 | 12 | — | |
| 每个正在运行CLUSTER或VACUUM FULL的后端一行,显示当前进度。请参阅Section 27.4.4。 | 现存 | |||
pg_stat_progress_copy |
14 | 11 | 171 次 | |
| 每个正在运行COPY的后端一行,显示当前进度。请参阅Section 27.4.6。 | 现存 | |||
pg_stat_progress_create_index |
12 | 16 | — | |
| 每个正在运行CREATE INDEX或REINDEX的后端一行,显示当前进度。请参阅Section 27.4.2。 | 现存 | |||
pg_stat_progress_data_checksums |
19 | 10 | — | |
| 启用或禁用数据校验和时,数据校验和启动器进程占一行。启用数据校验和时, 该视图还会为每个工作进程提供一行,显示当前进度。 详见Section 27.4.8。 | 现存 | |||
pg_stat_progress_repack |
19 | 14 | — | |
| 每个正在运行REPACK、CLUSTER或VACUUM FULL的后端一行,显示当前进度。请参阅Section 27.4.3。 | 现存 | |||
pg_stat_progress_vacuum |
9.6 | 17 | 193 次 | |
| 每个正在运行VACUUM的后端(包括自动清理工作进程)一行,显示当前进度。请参阅Section 27.4.3。 | 现存 | |||