Re: Report oldest xmin source when autovacuum cannot remove tuples

Scott Ray <scott@scottray.io>

From: Scott Ray <scott@scottray.io>
To: Laurenz Albe <laurenz.albe@cybertec.at>
Cc: Shinya Kato <shinya11.kato@gmail.com>, Japin Li <japinli@hotmail.com>, wenhui qiu <qiuwenhuifx@gmail.com>, Sami Imseih <samimseih@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-05-30T02:31:27Z
Lists: pgsql-hackers
> I guess the overhead of one more scan of the process array for every autovacuum
> run if "log_autovacuum_min_duration" is non-zero (which is the default)
> is acceptable.


Could vacuum compute the blocker during ComputeXidHorizons and consume it at log time?
Avoids the extra scan, and binds the blocker to the horizon vacuum used for pruning.

Scott Ray