smartvacuum() instead of autovacuum - Mailing list pgsql-patches

From Hitoshi Harada
Subject smartvacuum() instead of autovacuum
Date
Msg-id 200610221114.k9MBERQa007930@mbox31.po.2iij.net
Whole thread Raw
List pgsql-patches
Hi,

I am trying to implement smartvacuum(), which do vacuum only tables having
many dead rows, instead of autovacuum.
I read sources of autovacuum and pgstat, and found it could be if
smartvacuum() gets information from pgstat like autovacuum does.

concerns:
1. autovacuum makes vacuum nodes itself, while smartvacuum() will do it by
SPI for simplicity.
2. autovacuum allocate its own MemoryContext. Does smartvacuum() need it as
well?
3. autovacuum takes new transaction. Why?

questions:
1. Why isn't there some function like pg_stat_get_dead_rows(). if there is,
smartvacuum() can be implemented by even pl/pgsql
2. autovacuum can actually conflict with VACUUM ANALYZE on another session?

Any answers and opinions are appreciated.
Regards,


Hitoshi Harada



pgsql-patches by date:

Previous
From: "Magnus Hagander"
Date:
Subject: Re: Updates for vcbuild
Next
From: Tom Lane
Date:
Subject: Re: Updates for vcbuild