Thread: pg_stat_progress_vacuum empty when running vacuum full

pg_stat_progress_vacuum empty when running vacuum full

From
Luca Ferrari
Date:
Hi all,
I'm running 11.5 and I'm monitoring pg_stat_progress_vacuum every 2
seconds, while doing from another connection per-table VACUUMs. Every
vacuum last 30 or more seconds, so I was expecting to see a record
within pg_stat_progress_vacuum, but nothing appears if the vacuum is
full. I suspect this is due to vacuum full performing a side-by-side
table rewriting, rather than in-place actions against the original
table, but I'm not sure if this is real reason or if I'm missing
something.

Thanks,
Luca



Re: pg_stat_progress_vacuum empty when running vacuum full

From
Ian Lawrence Barwick
Date:
2021年2月12日(金) 20:01 Luca Ferrari <fluca1978@gmail.com>:
Hi all,
I'm running 11.5 and I'm monitoring pg_stat_progress_vacuum every 2
seconds, while doing from another connection per-table VACUUMs. Every
vacuum last 30 or more seconds, so I was expecting to see a record
within pg_stat_progress_vacuum, but nothing appears if the vacuum is
full. I suspect this is due to vacuum full performing a side-by-side
table rewriting, rather than in-place actions against the original
table, but I'm not sure if this is real reason or if I'm missing
something.


If you're executing VACUUM FULL, you should be looking at pg_stat_progress_cluster:


Though that doesn't appear until Pg 12.

Regards

Ian Barwick
--

Re: pg_stat_progress_vacuum empty when running vacuum full

From
luis.roberto@siscobra.com.br
Date:
> De: "Luca Ferrari" <fluca1978@gmail.com>
> Para: "pgsql-general" <pgsql-general@lists.postgresql.org>
> Enviadas: Sexta-feira, 12 de fevereiro de 2021 8:00:46
> Assunto: pg_stat_progress_vacuum empty when running vacuum full

> Hi all, 
> I'm running 11.5 and I'm monitoring pg_stat_progress_vacuum every 2 
> seconds, while doing from another connection per-table VACUUMs. Every 
> vacuum last 30 or more seconds, so I was expecting to see a record 
> within pg_stat_progress_vacuum, but nothing appears if the vacuum is 
> full. I suspect this is due to vacuum full performing a side-by-side 
> table rewriting, rather than in-place actions against the original 
> table, but I'm not sure if this is real reason or if I'm missing 
> something. 
> 
> Thanks, 
> Luca 


Hi!

I believe VACUUM FULL progress can be monitored via the pg_stat_progress_cluster command:
https://www.postgresql.org/docs/current/progress-reporting.html#VACUUM-PROGRESS-REPORTING